Instrução
O versionamento de ramificação é um tipo de versionamento de geodatabase que funciona com o modelo GIS da Web do ArcGIS Enterprise utilizando uma arquitetura baseada em serviços para permitir fluxos de trabalho de edição multiusuário e cenários de transação longos por camadas de feição da web. As camadas de feição da web (também conhecidas como serviços da feição) são camadas que são compartilhadas para suportar a exibição, consulta e edição de dados na web.
O ArcGIS API for Python possibilita a edição programática de camadas de feição versionadas por ramificação. De forma geral, um fluxo de trabalho típico de edição com versionamento de ramificação é o seguinte:
O trecho de código Python abaixo demonstra como executar edições em uma camada de feição de ponto com versão de ramificação por meio do Servidor de gerenciamento de versão
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))
ID do Artigo: 000032186
Obtenha ajuda de especialistas do ArcGIS
Comece a conversar agora