Erstellen von Modellen für Geoverarbeitungs-Services
Beim Erstellen von Modellen zum Veröffentlichen in ArcGIS Server müssen bestimmte Regeln befolgt werden:
- Für Eingabe- und Ausgabeparameter von Modellen müssen unterstützte Datentypen verwendet werden.
- Die Zwischen- und Ausgabedaten der Modelle müssen an bestimmte Speicherorte geschrieben werden.
Wenn Sie einige fertige Modelle und Services anzeigen möchten, klicken Sie auf Leitfaden zu den Beispielen für Geoverarbeitungs-Services.
Datentypen
In Modellen können nur bestimmte Datentypen von Eingabe- und Ausgabeparametern verwendet werden. Dies wird in Die wichtigsten Konzepte für Geoverarbeitungs-Services und Eingabe- und Ausgabedatentypen ausführlich erläutert.
Die Modifikation, die an vorhandenen Modellen am häufigsten vorgenommen werden muss, ist das Ändern von Feature-Class-Variablen, die von ArcGIS Server nicht unterstützt werden, in Feature-Set-Variablen, die von ArcGIS Server unterstützt werden.
Einige Datentypen, z. B. TIN, sind für Parameter nicht zulässig, und das Modell lässt sich nicht veröffentlichen. Sie erhalten beim Veröffentlichen eine Fehlermeldung (siehe Abbildung unten).
Andere Parameterdatentypen werden veröffentlicht, jedoch werden sie in den Datentyp "Zeichenfolge" umgewandelt. Beispielsweise wird aus dem Datentyp "Flächeneinheit" im veröffentlichten Task der Datentyp "Zeichenfolge". Wenn ein Modell einen konvertierten Datentyp als Eingabeparameter aufweist, müssen Sie den Typ in "Zeichenfolge" ändern und ihn im Modell in den gewünschten Datentyp konvertieren.
Weitere Informationen zum Konvertieren in und aus dem Datentyp "Zeichenfolge"
Zwischen- und Ausgabedaten
Beim Ausführen des Tasks erstellt ArcGIS Server ein Auftragsverzeichnis, in das Sie die Zwischen- und Ausgabedaten des Modells schreiben können (siehe Abbildung unten). Sie müssen die Zwischendaten und Ausgabedaten entweder in den Scratch-Ordner oder die Scratch-Geodatabase schreiben.
Regeln für Zwischendaten
- Klicken Sie in ModelBuilder mit der rechten Maustaste auf eine beliebige Zwischendatenvariable, und wählen Sie "Verwaltet" aus.Vorsicht:
Legen Sie keine Ausgabevariablen, sondern nur Zwischenvariablen auf "Verwaltet" fest.
- Verwenden Sie für Pfade die Variablenersetzung (%scratchworkspace%). Beispiele:
%scratchworkspace%/templines.shp %scratchworkspace%/scratch.gdb/outWatershed
- Schreiben Sie Daten in den Arbeitsspeicher. Beispiele:
in_memory/tempdata
Regeln für Ausgabedaten
Ausgabedaten müssen an einen der folgenden Speicherorte geschrieben werden:
- %scratchworkspace%/<Dataset>
- %scratchworkspace%/scratch.gdb/<Dataset>
- in_memory/<Dataset> nur dann, wenn kein Karten-Service des Ergebnisses für den Geoverarbeitungs-Service verwendet wird.
Wenn Sie einen Karten-Service des Ergebnisses verwenden, muss beachtet werden, dass zwei Services vorhanden sind – der Geoverarbeitungs-Service und der Karten-Service des Ergebnisses. Diese beiden Services werden unabhängig voneinander ausgeführt. Beim Ausführen des Tasks führt ArcGIS Server zunächst den Geoverarbeitungs-Task und dann den Karten-Service des Ergebnisses aus, um die Ausgabe des Geoverarbeitungs-Services darzustellen. Aufgrund dieser Ausführungsreihenfolge sind für den Karten-Service des Ergebnisses Datasets auf der Festplatte erforderlich, die vom Geoverarbeitungs-Service erzeugt wurden. Daher muss es sich bei der Ausgabe der Tasks im Geoverarbeitungs-Service um physische Datasets auf der Festplatte und nicht um Layer oder speicherinterne Datasets handeln.
- Legen Sie die Ausgabedaten nicht als verwaltete Daten ("Managed") fest.
- Schreiben Sie Ausgabedaten nicht in in_memory, wenn Sie über einen Karten-Service des Ergebnisses verfügen. Sie müssen die Einschränkungen für die Verwendung von "in_memory" kennen, bevor Sie Daten an diesen Speicherort schreiben.
- Legen Sie für Modellprozesse nicht den Scratch-Workspace fest. Legen Sie für das Modell nicht den Scratch-Workspace fest.
Verwenden der "ToolShare"-Ordnerstruktur
Wenn Sie Werkzeuge und Kartendokumente für die Veröffentlichung entwickeln, verwenden Sie die ToolShare-Ordnerstruktur zum Zusammenstellen der Ressourcen (Toolboxes, Kartendokumente, Daten und Dokumentation). Diese Ordnerstruktur enthält wie das Geoverarbeitungs-Service-Auftragsverzeichnis, das von ArcGIS Server für den Task erstellt wird, einen Scratch-Ordner mit einer Scratch-File-Geodatabase (siehe Abbildung unten). Wenn Sie die ToolShare-Ordnerstruktur verwenden und den Workspace auf den Scratch-Ordner festlegen, emulieren Sie ArcGIS Server. Hierdurch wird das Testen und Debuggen des Werkzeugs erheblich erleichtert.