Ein Geoverarbeitungsservice, der in ArcGIS Server eigenständig oder als Teil eines Web-Werkzeugs veröffentlicht wurde, kann in unterschiedlichen Anwendungen verwendet werden. Da Geoverarbeitungsservices von mehreren autorisierten Benutzern und Clients gleichzeitig verwendet werden können, ermöglichen sie es Ihrer Organisation, ihre benutzerdefinierten Geoverarbeitungs-Workflows zu erweitern und zu automatisieren.
Selbst wenn Sie mit einem Web-Werkzeug in Ihrem ArcGIS Enterprise-Portal arbeiten, können Sie mit der ArcGIS REST API auf die zugrunde liegenden Geoverarbeitungsservices zugreifen. Dies ermöglicht es Ihnen, ein Skript für den vom Service ausgeführten Geoverarbeitungs-Workflow zu erstellen und diesen zu erweitern. Ein Geoverarbeitungsservice kann zu folgenden Zwecken verwendet werden:
- Auflisten der verfügbaren Werkzeuge sowie ihrer Eingabe- und Ausgabeeigenschaften
- Synchrones Ausführen eines Tasks
- Asynchrones Senden eines Auftrags an einen Task
- Abrufen von Auftragsdetails, einschließlich des Auftragsstatus
- Anzeigen von Ergebnissen mit einem Kartenservice
- Anzeigen von Ergebnissen mit einem gehosteten Feature-Service
- Abrufen von Ergebnissen für die weitere Verarbeitung durch den Client
Sie können Geoverarbeitungsservices in Ihre Web-GIS-Anwendungen integrieren, egal ob Sie ArcGIS Web AppBuilder, ArcGIS Developer-Ressourcen oder eine andere Umgebung verwenden, die REST-API-Aufrufe ausführen kann.
Dieses Thema bietet einen Überblick über die Client-Anwendungen und Ressourcen von Esri, die in ArcGIS Server veröffentlichte Geoverarbeitungsservices verwenden können.
Desktop-Anwendungen
Nachdem ein Geoverarbeitungsservice veröffentlicht wurde, können Sie in Desktop-GIS-Anwendungen mit ihm arbeiten. Geoverarbeitungsservices können in ArcGIS Pro und ArcMap auf die gleiche Weise wie integrierte Geoverarbeitungswerkzeuge zum Ausführen von Geoverarbeitungs-Tasks verwendet werden.
Die Verwendung von Geoverarbeitungsservices in Desktop-GIS-Workflows bietet Vorteile: Statt zum Ausführen von Geoverarbeitungs-Tasks die Rechenleistung Ihres Desktop-Computers zu nutzen, können Sie die leistungsfähigeren Server-Computer verwenden, auf denen der Geoverarbeitungsservice ausgeführt wird. Zudem stellen Geoverarbeitungsservices und Web-Werkzeuge häufig benutzerdefinierte Geoverarbeitungs-Workflows sowie Task-Ketten bereit, die Ihre speziellen GIS-Workflows unterstützen.
Sie brauchen nicht der Autor oder Besitzer eines Geoverarbeitungsservice oder Web-Werkzeugs zu sein, um den Service bzw. das Werkzeug in Ihrer Desktop-GIS-Anwendung verwenden zu können. Wenn Sie über die entsprechenden Anmeldeinformationen für den Zugriff auf die Ressource im Web verfügen, können Sie über ArcGIS Pro oder ArcMap eine Verbindung herstellen und den Service verwenden.
ArcGIS Pro
Sie können ArcGIS Pro mit ArcGIS Enterprise verbinden, um die auf den Servern von ArcGIS Enterprise ausgeführten Geoverarbeitungsressourcen zu nutzen.
Um ein Web-Werkzeug zu verwenden, das für Ihr ArcGIS Enterprise-Portal freigegeben wurde, müssen Sie angemeldet sein und es als Aktives Portal festgelegt haben.
Wenn Sie den zugrunde liegenden Geoverarbeitungsservice eines Web-Werkzeugs direkt verwenden oder einen auf einer eigenständigen Server-Site veröffentlichten Geoverarbeitungsservice verwenden möchten, können Sie im Bereich Katalog unter Server eine Serververbindung herstellen.
Weitere Informationen zur Verwendung von Geoverarbeitungs-Services
ArcMap
Sie können mit Geoverarbeitungsservices Tasks in ArcMap auf die gleiche Weise wie in integrierten Geoverarbeitungswerkzeugen ausführen. Hierzu müssen Sie zunächst eine Verbindung von ArcMap mit der ArcGIS Server-Site herstellen, die den Geoverarbeitungsservice hostet.
Weitere Informationen zur Verwendung von Geoverarbeitungsservices in ArcMap
Python-Skripte
Sie können ein Python-Skript schreiben, um einen Geoverarbeitungs-Service auf verschiedene Weise auszuführen und zu verwenden. Die häufigste Methode, ein Skript auszuführen, stellt die Verwendung von ArcPy, dem Python-Site-Paket von Esri, dar. ArcPy verfügt über integrierte Methoden, um eine Verbindung zum Service herzustellen, diesen auszuführen und das Ergebnis zu verarbeiten.
Sie können aber auch integrierte Python-Module verwenden, um unter Verwendung einer JSON-Struktur zur Übermittlung von Ergebnissen REST-Aufrufe durchzuführen. Dabei verwenden Sie für den direkten Zugriff auf einen Geoverarbeitungsservice das ArcGIS Server-Services-Verzeichnis. Um diese Methode zu verwenden, müssen Sie einen Client von Grund auf mit Python-Code erstellen. Die meisten Skripte verwenden ArcPy zum Verbinden mit und Verwenden von Geoverarbeitungsservices.
Die folgenden Themen bieten Informationen zu der jeweiligen Desktop-Anwendung von Esri, die Sie verwenden. Es wird empfohlen, für die Erstellung von Python-Skripten ArcGIS Pro zu verwenden.
Verwenden von Geoverarbeitungsservices in Python-Skripten mit ArcGIS Pro
Verwenden eines Geoverarbeitungs-Service in Python-Skripten mit ArcMap
Webanwendungen
Es gibt mehrere Möglichkeiten, die Funktionen eines Geoverarbeitungsservice in anderen Webanwendungen als dem Map Viewer Classic im ArcGIS Enterprise-Portal verfügbar zu machen. Jede Client-Anwendung, die einen Geoverarbeitungsservice verwendet, erfordert hierfür die ArcGIS REST API. Sie müssen jedoch nicht unbedingt wissen, wie programmgesteuerte REST-Anforderungen durchgeführt werden. Sie können beispielsweise mit ArcGIS Web AppBuilder Geoverarbeitungsservices über ein benutzerfreundliches Widget hinzufügen. Die APIs und SDKs von ArcGIS Developer bieten erweiterte Optionen für die benutzerdefinierte Codierung.
ArcGIS REST API
Jeder Client, der Aufrufe der REST-API unterstützt, kann die ArcGIS REST API aufrufen, um einen Geoverarbeitungsservice abzufragen. Durch jede programmgesteuerte Anforderung an den Service wird dieser aufgefordert, seine Geoverarbeitungs-Task(s) auszuführen und eine Antwort an den Client zurückzugeben.
Beim Ausführen einer REST-API-Anforderung an einen Geoverarbeitungsservice sind mehrere Datentypen für Eingabeparameter möglich. Zum Ausführen von Anforderungen gibt es zwei Möglichkeiten:
- Verwenden Sie für eine synchrone Task-Anforderung den execute-Vorgang. Sie müssen warten, bis die Ergebnisse zurückgegeben wurden, bevor andere Vorgänge ausgeführt werden können.
- Verwenden Sie für eine asynchrone Task-Anforderung den submitJob-Vorgang. Sie können weitere Tasks ausführen, während Sie auf die Rückgabe der Ergebnisse warten. Sie können auch einen asynchronen Auftrag in der Warteschlange abbrechen.
ArcGIS Web AppBuilder
Sie können das Widget "Geoverarbeitung" von ArcGIS Web AppBuilder verwenden, indem Sie die URL der Geoverarbeitungsservices angeben – unabhängig davon, ob sich die Geoverarbeitungsservices auf einem Verbundserver oder eigenständigen Server befinden; siehe Das Widget "Geoverarbeitung". Ausführlichere Informationen finden Sie unter Verwenden von Web-Werkzeugen mit ArcGIS Web AppBuilder und Verwenden von Geoverarbeitungsservices mit ArcGIS Web AppBuilder.