ArcGIS Survey123’te Eklentileri (Attachment) Dosya Olarak Saklama

ArcGIS Survey123’te Eklentileri (Attachment) Dosya Olarak Saklama

ArcGIS Survey123’te Eklentileri (Attachment) Dosya Olarak Saklama

ArcGIS Survey123 ürünü ile anketler oluşturulabilmektedir. Bu anketler içerisinde kullanıcılardan medya dosyalarının eklenmesini de sağlayabilirsiniz. Bu medya dosyaları resim, ses veya normal bir dosya tiplerinde olabilmektedir.

ArcGIS Survey123 web sayfasında akıllı form sayesinde tasarımını yaptığınız anket formlarında resim ve dosya eklemek için ilgili bileşenleri kullanabilir ve miktarlarını da belirtebilirsiniz.

ArcGIS Survey123 kullanımı ile ilgili blog yazısına linkten ulaşabilirsiniz.

Akıllı form kullanmanız durumunda anketi yayınladığınız zaman ArcGIS Survey123 sizin için otomatik olarak formdaki bileşenlere göre feature katmanları (yayınlanmış/hosted) oluşturur. Bu katmanları ArcGIS Portal içerisinde anket adı ile oluşturulmuş bir dizin içerisinde bulabilirsiniz.

ArcGIS Survery123 Connect masaüstü yazılımı kullanarak ise excel yardımıyla daha nicel daha özel anketler oluşturmanıza imkan sağlamaktadır. ArcGIS Survery123 Connect yazılımı yeteneklerinin bir diğeri ise ArcGIS Portal içerisinde var olan bir feature katmanını kullanarak, bu katman içerisindeki özniteliklere göre formlar oluşturmanızı sağlar. Bu feature katmanı ArcGIS DataStore veya kurumsal veri tabanınızda bulunabilir. Linkten, mevcut bir katman kullanılarak Survey123 Connect’te nasıl anket oluşturulduğunu öğrenebilirsiniz.

Problem

Eğer veri tabanındaki katmanı kullanan bir anket oluşturursak ve bu anketten medya dosyası eklenmesini de istersek, tüm eklenen medya dosyaları, veri tabanında saklamak durumunda kalınacaktır. Eğer bu anketin kullanım yoğunluğu yüksek ise veri tabanında ciddi boyut artışları oluşacaktır. Mesela elektrik sektöründe bir firmada çalışıyorsunuz ve elektrik direkleriyle ilgili saha personelinizden resimler çekmesini istediniz. Her çalışan personeliniz her bir direkt ile ilgili 3’er fotoğraf çekse, her fotoğrafın boyutu 1MB olsa ve toplamda da 100 elektrik direği bulunsa, veri tabanında sadece bir personel işi için 300 MB boyut harcanmış olacak. Eğer donanım kaynaklarınız kısıtlı ise belirli bir süre sonra ciddi performans ve donanım sorunları yaşanacaktır.

Başka bir örnek problem, halka açık bir anket içerisinde gönderilen dosyaların direkt olarak görüntülenmesini istemediğiniz bir iş akışınız olsun. Kullanıcının yüklediği dosyaları bir onay mekanizması sonrası halkın görüntülenmesini istiyorsunuz. Hazırladığımız çözüm ile dosyalar direkt olarak katman içerisinde olmayıp, sunucuda dosya olarak tutulduğundan, siz dosyaya onay verdikten sonra katman içerisinde görüntülenmesini sağlayabilirsiniz.

Çözüm

Esri Türkiye Profesyonel Hizmetler olarak hem ArcGIS Enterprise hem de ArcGIS Online üzerinde başarılı şekilde çalışan bir çözüm üretmiş bulunmaktayız.

Bu çözüm sayesinde ArcGIS Survey123 üzerinden gönderilen medya dosyaları, istediğiniz bir sunucu makinesi üzerinde dosya olarak saklanmaktadır. Veri tabanında veya DataStore’da dosyalar ‘attachment’ olarak tutulmamaktadır. Bu sayede dosyaların saklanması dosya sunucusu üzerinde olmaktadır.

Medya dosyalarının, sunucuda dosya olarak tutulması, sizin bu dosyaları ArcGIS Pro veya bir web map içerisinden görüntülenmesine engel olmayacaktır.

ArcGIS Survey123 içerisinden eklenen medya dosyaları otomatik olarak, hiçbir müdahale edilmeksizin istenilen dosya sunucusundaki belirlemiş olduğunuz bir dizin içerisine gönderilir. Bu işlem sonrasında Survey123 içerisindeki medya bilgisi silinerek, veri tabanın daha az kullanılması sağlanmış olunur.

Anket cevapları gönderimi yapıldığında ArcGIS Portal’da bir web map içerisinde kullanımı da sağlanmıştır. Medya dosyalarınız bir sunucuda bulunmasına karşın, web map içerisinde görüntülenebilmektedir. Aşağıdaki örnekte ilk gösterimi yapılan kayıta ait medya dosyası veri tabanında tutulduğundan ‘attachment’ bilgisi görülmektedir. Ama dosya sunucusuna aktardığımız kayıtlarda ise ‘attachment’ bilgisi bulunmamaktadır yani medya dosyaları veri tabanında değildir.

Hizmetimiz hakkında daha detaylı bilgi için Esri Türkiye Profesyonel Hizmetler birimi ile irtibata geçiniz.

Esri Türkiye 2021

ArcGIS ile İş Süreçlerinizi Otomatikleştirin

ModelBuilder ile oluşturmuş olduğunuz bir coğrafi işlem modelini günün belirli bir saatinde veya belirli bir zaman aralığında tekrar tekrar çalıştırabileceğinizi biliyor muydunuz? Haftanın belirli günlerinde ya da her gün belirli saatlerde veri oluşturmak veya bazı analizleri gerçekleştirmek gibi rutin işleriniz olabilir. Bu işlerinizi gerçekleştirebileceğiniz bir model oluşturup ardından Windows Task Scheduler (Windows Görev Zamanlayıcı) ve birkaç satır Python kodu kullanarak belirli bir zamanda ve belirli bir frekansta çalışacak şekilde programlayabilirsiniz.

Örneğin, her gün müşterileriniz tarafından telefon veya internet aracılığıyla arıza kaydı doldurulmaktadır. Sizin görevinizin ise adres bilgilerini barındıran bu arıza kayıtlarının hangilerinin sizin sorumluluk bölgenizden geldiğinin tespit edilmesi ve saha çalışanlarına bir rapor olarak iletilmesi olduğunu varsayalım. Her gün belirli saatlerde böyle bir rutini gerçekleştirmek için manuel yöntemlerin kullanılmasının oldukça vaktinizi alacağı kaçınılmaz bir gerçektir. Fakat böyle bir senaryoyu ya da buna benzer günlük çok adımlı iş akışlarınızı ModelBuilder kullanarak otomatikleştirebilirsiniz. Yapmak istediğiniz işlerden bir iş akışı şeması oluşturarak bir işlemin birden çok adımını bir araya getirmenizi sağlayan ModelBuilder’ın nasıl oluşturulduğu hakkında daha fazla bilgi almak için “ArcGIS Pro’da ModelBuilder’la Çalışmak” adlı blog yazımızı inceleyebilirsiniz. Böyle bir iş akışı şeması oluşturmak tekrarlanan birçok işi tek seferde hızlıca gerçekleştirmenizi sağlayacaktır. Fakat bu oluşturulan modelinizi programlayarak belirli gün ve saatlerde kendiliğinden çalışmasını sağlamak sizlere oldukça zaman kazandıracaktır.

Yukarıdaki görsel böyle bir iş akışının modelini göstermektedir.

ArcPy kullanarak modelin çalıştırılması:

Modeller ArcGIS coğrafi işlem araçlarıyla tamamen entegre bir şekilde çalışmaktadır. ArcPy’ı ise yerleşik coğrafi işlem araçlarını (Buffer, Intersect gibi), tüm oluşturmuş olduğunuz modelleri ya da Python’da oluşturmuş olduğunuz kodları çalıştırmak için kullanabilirsiniz.

Yukarıdaki örnekteki gibi bir modeli programlayabilmeniz için -zaman belirleyerek otomatik olarak çalışmasını sağlayabilmek için- bir Python kod dosyası oluşturmalı ve modelinizi içeren araç kutunuzu (ToolBox) içe aktarmalısınız. Ardından ise modelinizi gerekli parametreler ile çalıştırmanız için bir kod satırı daha kullanmalısınız.

Görseldeki kod satırı bu işlemleri gerçekleştirmenizi sağlayan bir örnektir. Bu kod satırlarını kendi parametreleriniz ile özelleştirmeniz gerekmektedir.

  • “C:\path\myToolbox.tbx”ifadesi araç kutunuzun bulunduğu konumu göstermektedir.
  • “tbxAlias” araç kutunuzun görünür adını (Alias) ifade etmektedir.
  • arcpy.myModel_tbxAlias ifadesindeki “myModel” kelimesi modelinizin adına karşılık gelmektedir.
  • “C:\pathToInput\inputFolder” ifadesi girdi verilerinizin konumunu ve “C:\pathToGdb\output.gdb” ifadesi çıktı verilerinizin konumunu göstermektedir.

Windows Task Scheduler (Windows Görev Zamanlayıcı) kullanılarak görev oluşturulması:

ArcPy komutlarını kullanarak modelinizi çalıştırılan bir Python komut dosyası oluşturduktan sonra komut dosyanızı ve dolayısıyla modeli belirli bir zamanda çalıştırmak için Windows Task Scheduler (Görev Zamanlayıcı) kullanabilirsiniz.

Windows’da Task Scheduler penceresinden Action (Eylem) sekmesine ve ardından Create Task (Görev Oluştur) seçeneğine tıklayarak Create Task (Görev Oluştur) iletişim kutusunu açabilirsiniz. Name (Ad) alanından bir isim vererek görevi oluşturabilirsiniz.

Python komut dosyasını çalıştırabilmek için Create Task (Görev Oluştur) iletişim kutusunda Actions (Eylemler) ve ardından New (Yeni) butonlarına tıklayarak New Action (Yeni Eylem) iletişim kutusunu açabilirsiniz. Program/scripts (Program/komut dosyası) seçeneği için bir önceki adımda oluşturulan Python komut dosyasını tanımlayabilirsiniz.

 

Böylece bu görev için yeni bir eylem olarak bu Python komut dosyasının çalıştırılmasını belirlemiş olursunuz.

Oluşturulan görevin programlanması:

Create Task (Görev Oluştur) iletişim kutusundan Triggers (Tetikleyiciler) ve ardından New (Yeni) butonlarına tıklayarak oluşturmuş olduğunuz bu görevin otomatik olarak çalıştırılması için zaman belirleyebilirsiniz.

Eğer bu göreve daha gelişmiş ayarlar eklemek isterseniz, örneğin bilgisayar başlatılırken, boştayken ya da oturum açıldığında görevi başlat gibi, Begin the task (Görevi başlat) seçeneğinden bunları ayarlayabilirsiniz.

Böylece programladığınız zaman geldiğinde Windows Task Scheduler (Görev Zamanlayıcı) Python komut dosyanızın çalıştırılmasını sağlayacaktır. Python komut dosyanız da ModelBuilder ile oluşturmuş olduğunuz modelin çalışmasını sağlayacaktır. İşlemler tamamlandığında belirlemiş olduğunuz çıktı çalışma klasöründe modelin sonuç çıktısını bulabilirsiniz.

Bu yazımızla rutin işlerin Windows Task Scheduler ve Python komutlarını kullanarak nasıl programlayabileceğini ele aldık. Bu gibi teknik konularda ve Esri ürünleri yenilikleri hakkında daha fazla bilgi almak için blog sayfamızı takip edebilirsiniz.

 

Esri Türkiye, 2019