Beispiel für Geoverarbeitungs-Service: Auflisten, Erstellen und Löschen von Geodatabase-Versionen
Ordner |
GDBVersions |
Zweck |
Verwenden Sie diese Werkzeuge zum Auflisten, Erstellen und Löschen von Versionen durch ArcGIS for Server in der Enterprise-Geodatabase. |
Services |
GDBVersions (Geoverarbeitungs-Service). |
Geoverarbeitungs-Tasks |
ListVersions, CreateVersion, DeleteVersion |
Eingaben |
Enterprise-Geodatabase – Name der zu erstellenden oder zu löschenden Version |
Ausgaben |
ListVersions gibt eine Versionstabelle in der Geodatabase aus |
Daten |
Der Benutzer muss eine Enterprise-Geodatabase angeben |
Erweiterungen |
Keine |
Entsprechender Ordner
C:\arcgis\ArcTutor\GP Service Examples\GDBVersions enthält die fertigen Modelle und Python-Skripte.
Besonderheiten dieses Beispiels
In diesem Beispiel werden die Schritte zum Erstellen und Verwenden eines Geoverarbeitungs-Service, der Tasks zur Verwaltung von Geodatabase-Versionen enthält, ausführlich veranschaulicht. Die im Service verwendeten Modellwerkzeuge ListVersions, CreateVersion und DeleteVersion werden aus den Werkzeugen in der Toolbox "Data Management" im Toolset Versionen abgeleitet. Diese Geoverarbeitungs-Tasks ermöglichen Ihnen, eine Liste von Versionen in der Geodatabase abzurufen, neue Versionen zu erstellen oder vorhandene Versionen zu löschen. Anwendungen können diese Werkzeuge verwenden, um versionierte Bearbeitungs-Workflows unter Einbeziehung von Karten-Services und Feature-Services zu unterstützen. Abhängig von den Anwendungsanforderungen müssen nicht alle Tasks veröffentlicht werden. Beispielsweise ist nur der Task ListVersions erforderlich, wenn die Anwendung nur das Umschalten zwischen den Versionen unterstützen muss.
Daten
Dieses Beispiel erfordert eine vorhandene Enterprise-Geodatabase, die Versionen enthält, die Sie den Benutzern über den Geoverarbeitungs-Service zur Verfügung stellen möchten.
Modell- und Werkzeugdaten
Die Toolbox für den Geoverarbeitungs-Service ist GDBVersions.tbx.
Überblick über das Modell
Um die Modelle besser zu verstehen, erweitern Sie die Toolbox GDBVersions.tbx.
ListVersions
Klicken Sie mit der rechten Maustaste auf das Modell ListVersions, und wählen Sie Bearbeiten aus, um das Modell in ModelBuilder zu öffnen. Nachfolgend wird das Modell ListVersions dargestellt. Es gibt eine Eingabevariable, Enterprise_GDB. Wenn Sie das Modell ausführen, müssen Sie die Verbindung zur gewünschten Enterprise-Geodatabase bereitstellen.
Das Werkzeug VersionListToTable ist ein Skriptwerkzeug, das auch in GDBVersions.tbx verfügbar ist. Sie können den vom Werkzeug ausgeführten Python-Code überprüfen, indem Sie mit der rechten Maustaste auf das Skript VersionListToTable klicken und Bearbeiten auswählen, um den Python-Code in der standardmäßigen Python-IDE zu öffnen. Das Skript erstellt eine Ausgabetabelle und füllt sie mit Informationen über öffentliche und geschützte Versionen sowie private Versionen des Benutzers, die mit der Enterprise_GDB-Verbindung bereitgestellt werden.
Wenn Sie Betriebssystemauthentifizierung mit der Verbindung verwenden, gehören dazu öffentliche und geschützte Versionen sowie private Versionen des Kontos, unter dem ArcGIS for Server ausgeführt wird. In einer typischen ArcGIS-Installation wird der Server unter dem ArcGIS-Konto ausgeführt, das bei der Installation erstellt und konfiguriert wurde.
Die Ausgabetabelle enthält die folgenden Informationen zu jeder Version:
Feld | Beschreibung |
name | Der vollständig qualifizierte Name für die Version. |
access | Gibt an, ob die Version öffentlich, privat oder geschützt ist. |
created | Das Datum, an dem die Version erstellt wurde. |
Beschreibung | Die Beschreibung, die mit der Version gespeichert wird. |
isowner | Gibt an, ob dem verbundenen Benutzer die Version gehört. |
lastmodified | Datum, an dem die Version zuletzt geändert wurde. |
parentversionname | Der Name der Parent-Version. |
Standardmäßig wird eine In-Memory-Tabelle namens versions erstellt. Sie können auch das Modell anpassen, um eine Tabelle zu erstellen, die in die Eingabe-Geodatabase geschrieben wird. Immer wenn das Werkzeug ListVersions ausgeführt wird, wird die zuvor erstellte Tabelle gelöscht und durch eine neue Tabelle ersetzt.
CreateVersion
Klicken Sie mit der rechten Maustaste auf das Modell CreateVersion, und wählen Sie Bearbeiten aus. Nachfolgend wird das Modell CreateVersion dargestellt. Es gibt zwei Eingabevariablen: der Versionsname der neuen zu erstellenden Version und die Enterprise_GDB. Beim Ausführen des Modells müssen Sie die Verbindung zur Enterprise-Geodatabase bereitstellen, die Sie mit dem Parameter Enterprise_GDB verwenden möchten, wie zuvor auch beim ListVersions-Modell. Wenn Sie dieses Modell zusammen mit anderen Modellen veröffentlichen möchten, stellen Sie sicher, dass Sie auf dieselbe Enterprise-Geodatabase-Verbindung verweisen.
Das Werkzeug CreateVersion erstellt eine neue Version in der Enterprise-Geodatabase, die in Enterprise_GDB anhand des Namens, der im Parameter Version Name angegeben wurde, referenziert wird. Im Modell wird die Version aus der Standardversion erstellt und als privat gekennzeichnet. Sie können diese Parameter entsprechend Ihrer Anwendung anpassen. Wenn Sie versuchen, eine Version zu erstellen, die bereits vorhanden ist, wird beim Ausführen des Tasks oder des Service ein Fehler zurückgegeben.
DeleteVersion
Klicken Sie mit der rechten Maustaste auf das Modell DeleteVersion, und wählen Sie Bearbeiten aus, um das Modell in ModelBuilder zu öffnen. Nachfolgend wird das Modell DeleteVersion dargestellt. Es gibt zwei Eingabevariablen: der Versionsname der zu löschenden Version und die Enterprise_GDB. Wenn Sie das Modell ausführen, müssen Sie über den Parameter Enterprise_GDB die Verbindung zur gewünschten Enterprise-Geodatabase bereitstellen. Wenn Sie dieses Modell zusammen mit anderen Modellen veröffentlichen möchten, stellen Sie sicher, dass Sie auf dieselbe Enterprise-Geodatabase-Verbindung verweisen.
Das Werkzeug RemoveVersion löscht eine vorhandene Version aus der in der Enterprise_GDB referenzierten Enterprise-Geodatabase mit dem angegebenen Namen und gibt eine boolesche Variable aus, die True enthält, wenn das Werkzeug die Version erfolgreich gelöscht hat. Der angegebene Name muss der vollständig qualifizierte Name der Version sein. Das Werkzeug ListVersions kann verwendet werden, um den vollständig qualifizierten Namen abzurufen. Das Werkzeug RemoveVersion ist ein Skriptwerkzeug, das auch in der Toolbox GDBVersions.tbx verfügbar ist. Sie können den vom Werkzeug ausgeführten Python-Code überprüfen, indem Sie mit der rechten Maustaste auf das Skriptwerkzeug klicken und Bearbeiten auswählen. Das Skriptwerkzeug ruft das Werkzeug DeleteVersion mit dem eingegebenen Versionsnamen als Zeichenfolgenparameter auf. Falls Sie keine Berechtigung zum Löschen der Version haben, die Version nicht vorhanden ist oder abhängige Vorgängerversionen aufweist, wird ein Fehler zurückgegeben.
Herstellen von Serververwaltungsverbindungen zur Veröffentlichung
Stellen Sie sicher, dass Sie über die Berechtigung zur Veröffentlichung auf dem Server verfügen. Falls ja, befolgen Sie die Schritte unten zum Erstellen einer Publisher- oder Verwaltungsverbindung zu einem Server:
- Wechseln Sie zu GIS-Server > ArcGIS Server hinzufügen, um das Dialogfeld ArcGIS Server hinzufügen aufzurufen.
- Aktivieren Sie das Kontrollkästchen GIS-Services veröffentlichen oder GIS-Server verwalten.
- Geben Sie im Fensterbereich Allgemein einen Wert für Server-URL ein, und geben Sie die Werte für Benutzername und Kennwort an.
- Klicken Sie auf Fertig stellen, um die Verbindung herzustellen.
Erstellen eines Service
- Navigieren Sie im Fenster Katalog zu C:\arcgis\ArcTutor\GP Service Examples\GDBVersions.
Da Sie wahrscheinlich Bearbeitungen am Modell vornehmen, sollten Sie das gesamte Verzeichnis GDBVersions in ein anderes lokales Verzeichnis kopieren, wo Sie Änderungen vornehmen können.
- Doppelklicken Sie auf eines der Modellwerkzeuge, das Sie verwenden möchten, um das entsprechende Dialogfeld anzuzeigen.
- Stellen Sie den Parameter Enterprise_GDB auf Ihre Enterprise-Geodatabase ein.
- Klicken Sie auf OK, um das Werkzeug auszuführen.
Wenn das Werkzeug die Ausführung beendet, wird in das Fenster Ergebnisse ein neues Ergebnis geschrieben. Wählen Sie zum Öffnen des Fensters Ergebnisse im Hauptmenü ArcMap Geoverarbeitung > Ergebnisse aus.
- Überprüfen Sie die erfolgreiche Ausführung des Werkzeugs, indem Sie das Ergebnis im Fenster Ergebnisse prüfen. Bei einem Ausführungsfehler wird ein Fehlersymbol neben dem Ergebnis angezeigt.
- Wiederholen Sie die Schritte 1 bis 5 für andere Modellwerkzeuge, die Sie veröffentlichen möchten.
Schritte zum Erstellen eines Geoverarbeitungs-Service
Um einen Geoverarbeitungs-Service zu erstellen, geben Sie ein Ergebnis frei.
- Klicken Sie im Ergebnisfenster mit der rechten Maustaste auf eines der oben erzeugten Ergebnisse, und wählen Sie Freigeben als > Geoverarbeitungs-Service aus. Der Assistent Als Service freigeben wird geöffnet.
- Wählen Sie den zu veröffentlichenden Server und den Ordner, in dem die Services gespeichert werden sollen, aus. Der Standardname des Service entspricht dem Namen des Werkzeugs. Sie können den Standard-Service-Namen übernehmen oder einen neuen Namen eingeben.
- Klicken Sie im letzten Fenster des Assistenten Als Service freigeben auf Fortfahren, um den Service-Editor zu öffnen.
- Um einen weiteren Task hinzuzufügen, klicken Sie auf die Schaltfläche Ergebnis hinzufügen , um das Dialogfeld Ergebnis hinzufügen zu öffnen. Wählen Sie im Dialogfeld Ergebnis hinzufügen ein anderes der oben angegebenen Ergebnisse aus, und klicken Sie auf OK. Um einen weiteren Task hinzuzufügen, wiederholen Sie Schritt 4.
- Ändern Sie auf der Seite Parameter des Service-Editors den Ausführungsmodus in Synchron, da der Service schnell ausgeführt wird.
Verwenden des Geoverarbeitungs-Service
In den folgenden Schritten wird beschrieben, wie Sie die Geoverarbeitungs-Services verwenden, die Sie zuvor veröffentlicht haben.
- Öffnen Sie ein neues ArcMap-Dokument.
- Navigieren Sie im Fenster Katalog zur Serververbindung unter GIS-Server, suchen Sie den Geoverarbeitungs-Service, den Sie im vorherigen Abschnitt veröffentlicht haben, und erweitern Sie ihn. Die zuvor veröffentlichten Tasks werden angezeigt.
- Doppelklicken Sie auf den Task ListVersions, um das Dialogfeld des Tasks zu öffnen.
- Klicken Sie auf OK, um das Geoverarbeitungswerkzeug auszuführen.
Die Ausgabe wird als Tabelle in GPInMemoryWorkspace zurückgegeben. Sie können die Tabelle öffnen, um die Liste der Versionen in der Enterprise-Geodatabase anzuzeigen.
- Wenn Sie den Task CreateVersion veröffentlicht haben:
- Doppelklicken Sie auf den Task CreateVersion, um das Dialogfeld des Tasks zu öffnen.
- Geben Sie den Namen der zu erstellenden Version an.
- Klicken Sie auf OK, um das Geoverarbeitungswerkzeug auszuführen.
- Wiederholen Sie die Schritte 1 bis 4. Die neue Version wird in der neuen Ausgabetabelle angezeigt.
- Wenn Sie den Task DeleteVersion veröffentlicht haben:
- Doppelklicken Sie auf den Task DeleteVersion, um das Dialogfeld des Tasks zu öffnen.
- Geben Sie den vollständig qualifizierten Namen der gewünschten Version an (beispielsweise die soeben erstellte Version).
- Klicken Sie auf OK, um das Geoverarbeitungswerkzeug auszuführen.
- Wiederholen Sie die Schritte 1 bis 4. Die Version wird entfernt und nicht mehr in der neuen Ausgabetabelle angezeigt.