Der Map Viewer von ArcGIS Online bietet für jeden Nutzenden eine umfassende globale Adress- und Ortssuche, den ArcGIS Global Geocoding Service. Aber was muss ich machen, wenn ich auf der Karte nach meinen eigenen Daten, nach meinen Assets, nach meinen Installationen oder nach meinen Kunden suche?
Da eine Webkarte Dutzende von Layern und noch mehr Attribute enthalten kann, ist nicht automatisch eine Attributsuche vorhanden. Das wäre nicht sonderlich effektiv. Aber man kann eine Suche nach den relevanten Objekten sehr schnell konfigurieren.
Als Beispiel habe ich mir hier die KWF Rettungspunkte ausgesucht. Diese sind Open Data und können z. B. von unserem Open Data Portal heruntergeladen werden. Mehr Infos zu den Daten gibt es direkt bei der KWF.
Schritt 1: Die Webmap mit den Daten
Eine Suche wird in der Webmap vorbereitet und kann auf alle Featurelayer und Textattribute definiert werden.
In den ‚Einstellungen‘ der Webmap wird die Suche definiert.
Diese Webmap KWF Rettungspunkte ist öffentlich verfügbar. Sie können diese Webmap öffnen, sich in Ihrer eigenen ArcGIS Online Organisation anmelden und die Webmap als Kopie speichern. Dann können Sie auch auf die Sucheinstellungen zugreifen.
Schritt 2: Die Suche nach Layerattributen definieren
In der Webmap auf den Reiter ‚Einstellungen‘ klicken, nach unten scrollen und im Bereich ‚Anwendungseinstellungen‘ die Layer und die Attribute definieren.
Eine Suche geht immer auf ein Attribut in einem Layer und natürlich kann ein Layer (mit unterschiedlichen Attributen) mehrmals benutzt werden.
Und so läuft es:
Sie haben gesehen, dass ich für die Suche nach der Rettungspunktnummer die Option ‚gleich‘ gewählt habe und für die Ortsbeschreibung ‚enthält‘. Die beiden Optionen definieren, wie in der Datenbank gesucht wird:
- Bei ‚Gleich‘ wird ein ordinärer Like Operator abgeschickt: z. B. (RP_Nr LIKE ‘dah-f%’). Der Platzhalter % wird automatisch hinzugefügt.
- Bei ‚Enthält‘ wird es interessanter. Wenn man für einen Layer und ein Attribut eine solche Suche definiert, wird automatisch in der Datenbank ein Volltext Index auf das Attribut gerechnet.
Schritt 3: Suchen
Ich habe eine Volltextsuche auf die Ortsbeschreibung definiert – suchen wir mal nach diesem Objekt:
Die Ortsbeschreibung enthält diesen Text: ‚Tünzhausen; Abzweigung Eberspoint / Schönbichl / Schnotting‘
Für jedes einzelne Wort wird ein Index gerechnet und man kann nach allen Teilen in einem Wort oder auch nach mehreren Wörtern suchen.
Wenn ich, wie im Video, nach ‚Ebersp‘ suche, werden alle Punkte gesucht, die diesen String in einem Wort haben und wenn ich ‚Ebersp tünz‘ eintippe, dann erfolgt die Suche nach zwei Wörtern, die diese Strings enthalten.
Bei der Definition der Suche werden passende Indexe auf der Featureklasse gerechnet. Wenn man Besitzer der Daten ist, kann man sich diese Indexe auch ansehen und bei Bedarf wieder löschen oder neu rechnen. Sie können im hier benutzten Featurelayer diese Indexe also nicht einsehen (auch wenn der Layer öffentlich geteilt ist). Sie können es aber in Ihren eigenen Featurelayern definieren.
Empfehlung
- Die Volltextsuche über ‚Enthält‘ eignet sich sehr gut für Beschreibungen oder wenn man nicht so genau weiß, wie die User eigentlich suchen werden.
- Die Einstellung ‚Gleich‘ eignet sich, wenn genau definiert ist, wie das Attribut aufgebaut ist nach dem gesucht wird. In diesem Fall eine Objekt-ID.
Wenn man nicht mit ArcGIS Online, sondern mit ArcGIS Enterprise arbeitet, kann man diese Attribut-Suchen auch definieren. Es ist aber auch möglich, volle Locatoren auf die eigenen Daten zu definieren, die mehrere Attribute berücksichtigen und die in einem gewissen Umfang auch unscharf (Tippfehler!) suchen können.
Was geht noch und wie geht es weiter?
In den Apps, die auf der Webmap basieren, werden die definierten Suchen entweder direkt genutzt, z. B. in ArcGIS Field Maps, oder man kann die Suche noch weiter konfigurieren.
In den Instant Apps kann man, unabhängig von den Einstellungen in der Webmap, die Suche neu definieren. Die Suche in den Instant Apps basiert auf den gleichen Indexen und bietet noch ein paar mehr Möglichkeiten (z. B. die Suche auf den sichtbaren Kartenausschnitt einschränken), damit die Funktionen der App noch besser an die Aufgabe angepasst werden können.
Der Nachteil dieser Suche – so bequem und schnell sie auch ist – ist natürlich, dass eine Suche immer nur auf ein Attributfeld abzielt. Wenn man es komplexer will, muss man das im Datenmodell schon vordenken, z. B. die Inhalte mehrerer Attribute in ein neues Suchattribut kopieren. Oder man nutzt z. B. Experience Builder, mit dem man wesentlich komplexere Featuresuchen oder Filter definieren kann.
Beispiel für die Suche in einer Instant App:
Weitere Beiträge unserer Tipps & Tricks-Reihe:
Tipps & Tricks #2: Schatten, aber richtig!
Tipps & Tricks #3: Tastenkombinationen in ArcGIS Pro
Tipps & Tricks #4: Importieren von NAS-Daten in ArcGIS Pro