HOW TO
Die Verzweigungsversionierung ist eine Form der Geodatabase-Versionierung, die mit dem ArcGIS Enterprise-Web-GIS-Modell arbeitet. Sie nutzt eine Service-basierte Architektur, um Bearbeitungs-Workflows für mehrere Benutzer und Szenarien mit langen Transaktionen über Web-Feature-Layer zu unterstützen. Web-Feature-Layer (werden auch als Feature-Services bezeichnet) sind Layer, die zum Anzeigen, Abfragen und Bearbeiten von Daten im Web freigegeben werden.
Die ArcGIS API for Python ermöglicht die programmgesteuerte Bearbeitung von nach Verzweigung versionierten Feature-Layern. Auf oberster Ebene sieht ein typischer Workflow der Bearbeitung von nach Verzweigung versionierten Daten wie folgt aus:
Der folgende Python-Codeausschnitt zeigt, wie Sie Änderungen an einem nach Verzweigung versionierten Punkt-Feature-Layer über den Version Management Server vornehmen.
from arcgis.gis import GIS
from arcgis.features._version import VersionManager
try:
# parameters
machine = 'machine.domain'
portalUrl = 'https://{0}/webadaptor'.format(machine)
base_server_url = "https://{0}/server/rest/services/samplePointsBV".format(machine)
version_management_server_url = "{0}/VersionManagementServer".format(base_server_url)
new_version_name = "v1"
userName = ''
password = ''
# Sign in to Portal
gis = GIS(portalUrl, userName, password)
vms = VersionManager(version_management_server_url, gis)
print(vms.properties)
# Get a list of all versions
versions = vms.all
print(versions)
# feature to add
feature = {
"attributes": {
"name": "TEST123",
},
"geometry": {
"x": 153.11349,
"y": -27.492016
}
}
# Create a new version
version = vms.create(new_version_name)
print(version.properties)
# Get the layer to edit
editlayer = version.layers[0]
print(editlayer)
# Start an edit session
version.mode = 'edit'
version.start_editing()
add_result = version.edit(editlayer, adds=[feature], updates=None, deletes=None, use_global_ids=False, rollback_on_failure=True)
print(add_result)
version.stop_editing(save=True)
version.mode = None
print("Edits complete")
except Exception as err:
print("Error: {0}".format(err))
Artikel-ID: 000032186
Unterstützung durch ArcGIS-Experten anfordern
Beginnen Sie jetzt mit dem Chatten