Nachdem wir uns im letzten Blogbeitrag mit den Neuerungen im Survey123 Web Designer beschäftigt haben, möchte ich Ihnen heute meine Highlights aus Survey123 Connect vorstellen.
Eines der ersten Highlights für mich sind die verbesserten Möglichkeiten, dynamische Dropdownlisten im Formular zu integrieren. Die Idee dahinter ist recht simpel und auch nicht ganz neu.
Volle Flexibilität mit dynamischen Listen
Im Normalfall besteht ein Formular aus mehreren Listen, über deren Werte in Dropdown-Menüs gesucht werden kann. Möchten wir allerdings kaskadierend suchen, so war es bisher immer notwendig, sogenannte choice filter mit dahinter liegenden, teils größeren Listen, in der Exceldatei selbst anzulegen. Der Nachteil: Sollten die Listen angepasst werden müssen, so müsste man auch immer wieder das Formular neu veröffentlichen. Zudem nimmt die Ladezeit des Formulars mit wachsender Länge der Liste(n) immer weiter ab.
Die erweiterte Funktionalität der dynamischen Listen erlaubt nun auch das Beziehen der Werte aus externen *.csv-Dateien sowie aus gehosteten Diensten. Man greift also direkt auf Werte aus diesen Quellen zu, kann diese verändern und kommt somit nicht mehr in den Zwang, das Formular für jede Änderung der Liste neu veröffentlichen zu müssen. Ein weiteres spannendes Detail: Man kann in begrenztem Maße räumliche Abfragen machen. Zeichnet man bspw. ein Polygon in die Karte des Formulars, so werden nur die Werte der Punkte zurückgegeben, die sich innerhalb dieser Fläche befinden.
Unterstützt werden weiterhin die topologischen Operatoren „Linie schneidet Linie“, „Punkt in gepuffertem Punkt“ und „Linie schneidet gepufferten Punkt“. Ein spannendes Highlight mit Potenzial für viel Flexibilität. Eine detaillierte Anleitung gibt es hier.
Berechnungsmodi die keine Wünsche offen lassen
Ein weiteres Highlight sind die neuen Berechnungsmodi in ArcGIS Survey123 Connect. Während Berechnungen bis dato immer nur ausgeführt wurden, wenn die Antwort auf eine Frage noch nicht gegeben war, gibt es nun zwei weitere Modi, die dem Formular mehr Flexibilität verleihen: manual und always.
Die Berechnungsmethode always bewirkt hierbei, dass die Formel, die in der Exceldatei in der Spalte calculation steht, immer ausgeführt wird, wenn sich ein Wert ändert, auf den in der Formel verwiesen wird.
Der Modus manual hat zur Folge, dass neben der Antwort, die berechnet werden soll, eine Schaltfläche „Berechnen“ erscheint, mit der die Nutzerin oder der Nutzer die Berechnung manuell anstoßen muss.
Einzutragen ist die jeweilige Berechnungsmethode hierbei in die Spalte bind::esri::parameters. Die Syntax lautet hierbei bspw. calculationMode=manual.
Gibt man keinen der beiden Modi explizit an, so bleibt es beim Modus auto, der immer dann die Berechnung startet, wenn es bisher noch keine eingetragene Antwort auf die Frage gab. Volle Flexibilität also, um das Formular noch schneller und smarter zu machen.
Erweiterte Möglichkeiten der Markier-Werkzeuge
Wer hat sich nicht schon einmal gedacht: „Könnte ich jetzt nur ein paar Notizen in dem Bild machen, was ich gerade aufgenommen habe und mit an das Formular anhängen möchte…“. Keine Sorge, eine Lösung ist bereits da.
Survey123 Connect bietet schon seit Längerem die Funktion, in aufgenommenen Bildern Skizzen bzw. Markierungen einzufügen. Diese Möglichkeiten wurden nun noch einmal dahingehend erweitert, dass Sie nun auch eigene Symbole, Schriften, etc. in die Vielfalt der bereits bestehenden Möglichkeiten aufnehmen können. Ein großartiges Feature, um noch mehr Kontext zu erfassen. Interesse daran, wie es funktioniert? Dieser Blogbeitrag verrät mehr.
Neue JavaScript-Möglichkeiten in Survey123 Connect
Wo wird grad von Berechnungen sprechen… Seit geraumer Zeit gibt es bereits die Möglichkeit, eigene JavaScript-Funktionen in die Survey zu integrieren. Was bisher immer über externe Entwicklungsumgebungen programmiert und dann in die Survey integriert werden musste, kann nun auch direkt in der Oberfläche von Survey123 Connect erfolgen. Der neue Reiter „Skripte“ macht es möglich.
Benutzerdefinierte JavaScript-Funktionen können verwendet werden, um Werte in Fragen zu berechnen, benutzerdefinierte Datenvalidierungsregeln anzuwenden, Bedingungen zum Ausblenden und Anzeigen von Fragen zu integrieren, oder auch um zu steuern, wann eine Frage schreibgeschützt oder verpflichtend bzw. optional sein soll. Interesse geweckt? Weitere Informationen gibt es in diesem Blogbeitrag.
Was der Survey123 Web Designer kann, kann Survey123 Connect schon lange!
Wie in meinem ersten Blogbeitrag zu den Neuerungen in ArcGIS Survey123 erwähnt, kann man über die nun im Web Designer verfügbaren Berechnungen auch direkt auf Daten eines angemeldeten Nutzers zugreifen und diese direkt in Antworten integrieren. Dies ist nun auch über eine Konfiguration in Connect möglich. Die Zauberwörter lauten pulldata(“@property“). Diese Funktion ist zwar nicht komplett neu, wurde aber nun um ein paar spannende weitere Abfragemöglichkeiten ergänzt. Hierzu zählen unter anderem Nutzername, Email-Adresse, die Survey-Version, die Bezeichnung des Gerätes, mit dem das Formular erfasst wurde, und vieles mehr. Ein Blick lohnt sich definitiv. Mehr Infos gibt es hier.
Eine weitere Funktion, die ich im letzten Blogbeitrag erwähnt hatte, war die maßstabsabhängige Editiermöglichkeit. Hier konnte man explizit erlauben, ab welchem Maßstabslevel es überhaupt möglich ist, neue Feature zu erfassen. Auch dies ist über Survey123 Connect einstellbar. Nutzen Sie hierzu einfach die Spalte body::esri:style in der Zeile der Kartenfrage und geben Sie folgende Syntax an: minCaptureZoomLevel=12. Aber Achtung: Unterstützt wird dies aktuell nur im Webformular.
Volle Flexibilität bei Bildern, Signaturen und Audiodateien
Die Bild-, Signatur- und auch die Audio-Frage sind zwar schon etwas länger dabei, haben aber nun eine signifikante Auffrischungskur erhalten.
Neu bei der Audio-Frage ist die Möglichkeit, längere Aufnahmen in die Erfassung zu integrieren. Dies wird durch erweiterte Kompressions-Optionen ermöglicht. Steuerbar seit dem Juni-Release auch über neue Parameter im Excel-Blatt. So lassen sich bspw. die maximale Größe der Audiodatei, die maximale Dauer der Aufnahme sowie der Codec konfigurieren.
Bei der Bild- und Signatur-Frage geht es sogar noch einen Schritt weiter. Hier ist es ab jetzt möglich, den Namen der aufgenommenen bzw. angehängten Datei zu modifizieren. Dies geht bspw. sehr einfach über eine Berechnung in der Spalte calculation.
In dem Beispiel oben, habe ich die Funktion concat() genutzt, um eine Verbindung aus einem festen Textbaustein, einem variablen Wert aus einer Frage sowie dem aktuellen Zeitstempel zu konfigurieren. Alternativ kann die Formal auch direkt in die Spalte bind::esri:parameters geschrieben werden. Weitere Parameter erlauben auch die Möglichkeit zu konfigurieren, ob ein Nutzer oder eine Nutzerin den Dateinamen im Nachgang modifizieren können oder nicht. Zum jetzigen Zeitpunkt gilt allerdings, dass dieses neue Feature nur in der nativen App und nicht im Web unterstützt wird.
Survey123 als weiterer Streaming-Anbieter
Wer jetzt vermutet, dass ArcGIS Survey123 neben den bekannten Streaming-Diensten nun auch Serien und Filme anbietet, den muss ich leider enttäuschen (auch wenn es ziemlich cool wäre). Streaming im Sinne von ArcGIS Survey123 bedeutet hier, dass Sie seit dem Juni-Release Polylinien und Polygone auch automatisiert erfassen können, während Sie bspw. eine alltägliche Tour mit dem Fahrrad drehen oder einfach nur um den nächstgelegenen See spazieren. Natürlich kann diese Funktion auch zum Einmessen von Grundstücken oder ähnlichem genutzt werden.
Um diese Funktion zu aktiveren, brauchen wir zwingend Survey123 Connect. Aktiviert werden kann die Funktion für die Fragetypen geoshape (Flächen) und geotrace (Linien). Hierzu nutzen wir in der Spalte body::esri::style die folgende Syntax:
- method=vertex,streaming,beep distanceThreshold=1
Der Parameter method steuert hierbei die Sichtbarkeit und das Verhalten der Funktion. Unsere Syntax besagt, dass wir die Erfassungswerkzeuge im Modus „Stützpunkt“ (vertex) als auch die Streamingwerkzeuge (streaming) aktiviert haben möchten. Der Parameter beep besagt, dass bei der Erfassung eines jeden neuen Punktes ein akustisches Signal ausgespielt werden soll, während distanceThreshold=1 dafür sorgt, dass zwei aufeinanderfolgende Punkte nie in einem Abstand von weniger als 1 Meter erfasst werden sollen. Hier noch einmal als Screenshot, wie es in Excel aussieht:
Ein cooles neues Feature, dass einem definitiv die Erfassung erleichtern wird.
Achtung: Spoiler Alarm! Ein kurzer Ausblick in das nächste Release.
Zum Schluss noch ein cooles Feature, welches aktuell in Beta ist. Und mit dem Release 3.15.x Einzug in das Standardrepertoire der Funktionalitäten von Survey123 Connect halten wird. Gemeint ist die pulldata()-Funktion in Kombination mit externen gehosteten Diensten.
Die pulldata()-Funktion kennen viele bereits, um Daten aus einer *.csv-Datei zu laden, JavaScript-Funktionen einzubinden oder auch einfach um auf Eigenschaften oder Nutzerdaten zuzugreifen. Mit dem Release 3.15.x wird die pulldata()-Funktion ergänzt um die Eigenschaft @layer. Eine Funktion, mit der es möglich sein wird, ganz ohne JavaScript-Funktionen, Daten aus externen gehosteten Diensten und Tabellen über eine räumliche Abfrage zu beziehen. Hier ein Beispiel: Stellen Sie sich vor, Sie bauen ein Formular, welches direkt auf Grund der Position in der Karte weiß, in welchem Stadtteil sich die Meldung befindet, wer der richtige Ansprechpartner ist und welche sonstigen spannenden Infos sich dort befinden.
Diese und viele weitere Szenarien können mit der neuen Funktion abgedeckt und bereits jetzt in Version 3.14 getestet werden. Die Syntax sieht hierbei wie folgt aus:
- pulldata(‘@layer’, ‘getRecordAt’, <targetLayer>, <location>, <whereFilter>)
- pulldata(‘@layer’, ‘getRecord’, <targetLayer>, <whereFilter>)
In meinem Beispiel habe ich ein Formular mit 3 Fragetypen erstellt. Eine Kartenfrage, um den Punkt zu setzen, sowie zwei Textfragen, die über die pulldata()-Funktion in der Spalte calculation automatisch gefüllt werden sollen.
Im Ergebnis bekommt man nun, sobald man einen Punkt in die Karte setzt, automatisch die Rückmeldung, welches Flurstück sich an genau dieser Stelle befindet und welche Flurstücksnummer wir an dieser Stelle vorfinden. Dies geschieht dadurch, dass unser gesetzter Punkt in der Karte über Koordinaten verfügt, die an die pulldata()-Funktion übergeben werden, die wiederum an genau derselben Stelle im externen Dienst sucht, ob ein Feature mit Informationen vorhanden ist oder eben nicht. Ist dies der Fall, bekommen wir ein JSON mit allen Informationen zu diesem Feature zurück. Aus diesen Informationen fragen wir dann das Attribut mit der Flurstücksnummer ab.
Übrigens auch eine gute Möglichkeit, um zu prüfen, ob die Meldung im Stadtgebiet erfolgt oder nicht. Kommt keine Antwort im JSON, sperren wir das Formular einfach und wir geben eine Meldung an den Nutzenden aus, dass die Positionsmeldung doch noch einmal überdacht werden sollte.
Ich wünsche viel Spaß beim Ausprobieren der neuen Funktionen 😊
Falls Sie den 1. Teil verpasst haben -> ArcGIS Survey123 (Teil 1): Der Web Designer
Tipp: Schauen Sie sich auch meine Life Hacks zum Thema ArcGIS Survey123 an: