Saya sedang mengerjakan skrip Python ArcGIS (9.3). Salah satu input adalah daftar fitur. Untuk setiap fitur, saya harus memilih bidang yang sesuai. Mengatur parameter ke MultiValue memberikan tabel yang bagus di UI untuk semua fitur yang sedang diproses. Bagaimana cara menambahkan kolom lain ke tabel MultiValue untuk memilih bidang untuk setiap fitur?
Diposting silang: http://forums.arcgis.com/threads/30907-MultiValue-Parameter-with-Multiple-Columns
Jawaban Esri dari forum ArcGIS:
Sayangnya, solusi untuk ini diimplementasikan baru-baru ini untuk 10.1 dengan input ValueTable untuk alat skrip. Anda harus memiliki dua parameter multinilai dengan beberapa validasi khusus untuk membuat ini berfungsi untuk 9.3.1.
arcpy
arcgis-9.3
python-script-tool
terima kasih
sumber
sumber
Jawaban:
Saya telah bekerja bagaimana melakukan ini walaupun dengan cara yang cukup sederhana. Saya ingin membuat parameter multinilai di mana saya menambahkan banyak FeatureLayers dan kemudian memilih bidang ID untuk setiap lapisan. Saya membuatnya berfungsi tetapi saya tidak dapat bekerja bagaimana membuat bidang daftar drop down, sehingga pengguna harus memasukkan nama bidang secara manual. Inilah antarmuka:
Jika ada yang berhasil memecahkan masalah ini atau beberapa guru dari ESRI memberkati kita dengan pengetahuan mereka, saya akan senang mengetahui bagaimana mengubah kolom kedua saya (ID Situs) menjadi drop down, daftar bidang tertentu. Jika Anda ingin melihat contohnya, lihat alat Create TIN .
Pokoknya untuk membuat antarmuka ini saya membuat alat skrip dan menambahkan parameter tipe layer fitur dan mengaturnya ke multivalue seperti yang ditunjukkan di bawah ini.
Saya kemudian mengklik tab Validasi di bagian atas dan kemudian tombol Edit. Karena parameter ini adalah parameter ke-6 dalam alat skrip saya, saya memperbarui kode berikut:
Ini me-reset antarmuka ke tabel multi-kolom yang saya inginkan. Saat Anda menggunakan GetParameterAsText, ia mengembalikan yang berikut menggunakan contoh saya:
pipeline pid;Dredging did
Saya telah melakukan beberapa penelitian lebih lanjut dan telah membuat alat menggunakan kotak alat python. Ini bekerja dengan sangat baik tetapi memiliki batasan jika Anda kembali dan memilih ID lain. Saya telah memposting kode di GeoNet di sini .
sumber
jika Anda mencari daftar turun bawah untuk parameter ID Situs, Anda dapat menggunakan kode sebagai berikut:
Jadi, Anda dapat membuat kursor atau menggunakan metode lain untuk membaca semua bidang FC dan meneruskannya, sebagai daftar, ke kalimat sebelumnya
sumber