Saya memiliki lebih dari seratus FC, masing-masing dengan 10 atau 20 atribut untuk menambah atau mengubah alias untuk, dua atau lebih kali setahun. Tak perlu dikatakan, ini bukan sesuatu yang saya akan dengarkan melalui saya. Bagaimana saya mengotomatiskan proses ini?
Solusi Python lebih disukai tetapi akan menggunakan apa pun yang berfungsi.
Saya memiliki akses ke Arcgis 9.3.1 dan 10 (tingkat lisensi ArcInfo).
arcpy
arcgis-10.0
alias
matt wilkie
sumber
sumber
Jawaban:
Pada versi 10.1 AlterAliasName () dapat digunakan untuk re-alias tabel:
Pada versi 10.3 Alter Field dapat digunakan untuk membuat ulang bidang alias:
sumber
Dengan bantuan dari Mark Cederholm saya memiliki solusi yang berfungsi menggunakan python dan arcobjects . Itu kasar di tepinya, tapi itu menyelesaikan pekerjaan. Setelah mengikuti resep di halaman itu, buat skrip baru yang menggunakan
GetLibPath, NewObj, CType, OpenFeatureClass
fungsi darisnippets.py
. Juga buat tabel ganti nama pencarian dalam format .csv:Pencarian ke Field Alias (att_code-name_lookup.csv):
Kelas fitur untuk pencarian Alias FC (fc_code-name_lookup.csv):
dan skripnya:
sumber
Kode ini berfungsi untuk saya di 9.3.1 ...
sumber
Solusi lain dari Rob Clark :
Dalam python, sintaks untuk
field_map
bagian ini rumit, jadi lewati sekali secara interaktif untuk meluruskan parameter, biarkan berjalan. Lalu pergi ke jendela hasil , r-klik dan Salin potongan python . Berikut ini cuplikan yang digabungkan kembali menjadi sesuatu yang sedikit lebih mudah untuk diperluas dan digunakan kembali (lebih banyak pekerjaan dapat dilakukan untuk memecah potongan peta bidang dan properti):sumber
Solusi ini untuk pengguna yang menggunakan SQL server sebagai geodatabase. Anda bisa mengubahnya secara manual dengan perintah pembaruan SQL. simpan semua nama fitur di tabel [sde]. [GDB_OBJECTCLASSES]. nama alias ditetapkan hanya jika Anda mengubah nilai kolom alias.
EDIT: metode ini adalah metode cepat untuk mengubah nama alias. tetapi menggunakan IClassSchemaEdit lebih baik karena dalam metode pembaruan sql Anda tidak dapat menggunakan nama alias hingga mereset ruang kerja fitur.
sumber