Ini berlaku untuk ArcGIS Server 9.3 dengan JavaScript API 2.4.
Tujuan saya adalah mengklik pada peta dan menjalankan tugas Identifikasi pada semua lapisan Dinamis yang terlihat.
IdentifyTask memerlukan URL ke titik akhir REST, dengan IdentifyParameters menentukan layerIds tempat operasi identifikasi harus dilakukan.
Tampaknya alat Identify mengharapkan semua lapisan dapat diakses dari titik akhir REST yang sama (yaitu, ArcGIS Server yang sama).
Dalam kasus saya, lapisan dilayani dari beberapa instance ArcGIS Server - bagaimana alat Identifikasi dapat mendukung ini? Misalnya, jika lapisan Bangunan dan Paket di peta ini berasal dari Server ArcGIS yang terpisah.
(Ini terkait dengan pertanyaan saya sebelumnya , tetapi saya sadar sekarang saya harus menjawab pertanyaan ini terlebih dahulu)
sumber
Jawaban:
Pertama, berikut adalah contoh API JavaScript yang disederhanakan untuk menunjukkan konsep menggunakan DeferredList untuk memproses beberapa tugas identifikasi:
Maka di sini adalah contoh di jsFiddle yang menurut saya melakukan apa yang Anda inginkan, berjalan menggunakan semua lapisan yang terlihat di semua lapisan peta dinamis yang terlihat di peta.
http://jsfiddle.net/blordcastillo/mULcz/
Semua kesalahan ketik sudah diperbaiki sekarang :)
Ide dasarnya adalah bahwa setiap kali peta diklik atau visibilitas diaktifkan, identifikasinya dijalankan kembali. Ketika identifikasi dijalankan, jumlah tugas identitas yang dipecat tergantung pada jumlah lapisan yang terlihat, dan menunggu hingga semua lapisan kembali untuk menampilkan hasilnya.
sumber
Tugas identifikasi hanya dapat merujuk satu layanan peta, jadi Anda harus:
Saya mengalami situasi yang sama dengan aplikasi di mana saya ingin dapat mengidentifikasi pada layanan peta DEM, dan pada layanan peta hasil kenaikan permukaan laut dari tugas geoprocessing. Saya memilih untuk menjalankan dua IdentifyTasks. Satu-satunya hal yang benar-benar harus Anda tambahkan adalah mencari tahu ketika kedua tugas selesai.
Aliran dasarnya adalah (ini menggunakan Silverlight / C #)
sumber
Saya membuat ulang skenario ini dengan daftar yang ditangguhkan, tetapi bagian yang sulit hanya mengidentifikasi pada lapisan yang dalam skala. Ini untuk versi 3.2 jsapi http://www.spatialexception.org/posts/arcgis-javascript-identifytask-returns-scale-dependent-layers
sumber