HOW TO

Aktualisieren von Enterprise-Geodatabase-Datenquellen für Kartendokumente unter Verwendung von ArcPy

Last Published: September 28, 2021

Zusammenfassung

Es gibt viele Gründe, warum Datenquellen repariert oder an andere Speicherorte umgeleitet werden müssen, zum Beispiel bei der Migration auf einen neuen Computer. Wenn jedes betroffene Kartendokument manuell aktualisiert werden muss, kann das äußerst aufwendig sein. Mit der arcpy.mapping-Skriptumgebung ist es möglich, die Aktualisierung von Datenquellen für einzelne oder alle Layer gleichzeitig in einem gemeinsamen Workspace zu automatisieren, wobei das Kartendokument noch nicht einmal geöffnet werden muss.

Vorgehensweise

Gehen Sie folgendermaßen vor, um eine Enterprise-Geodatabase-Datenquelle unter Verwendung von ArcPy zu aktualisieren:

  1. Importieren Sie das erforderliche Modul, und geben Sie den Speicherort des Kartendokuments an.
import arcpy mxd = arcpy.mapping.MapDocument(r"mxd_source_location")
  1. Geben Sie den Pfad der Enterprise-Geodatabase-Datenquelle an.
new_sdeworkspace_path = r"new_enterprise_source_location"
  1. Durchlaufen Sie die im Kartendokument verfügbaren Layer in einer Schleife, und ersetzen Sie die alte Quelle durch die in Schritt 2 angegebene neue Quelle.
for lyr in arcpy.mapping.ListLayers(mxd): print lyr.name     lyr.replaceDataSource(new_sdeworkspace_path, "SDE_WORKSPACE")
  1. Speichern Sie das Kartendokument.
mxd.saveACopy(r"save_location_path") del mxd

Nachfolgend finden Sie ein vollständiges Beispielskript:

import arcpy mxd = arcpy.mapping.MapDocument(r"E:\Data\Mxd\test\​old.mxd") new_sdeworkspace_path = r"E:\Data\Connections\GISADMIN@GEODATA.sde" for lyr in arcpy.mapping.ListLayers(mxd): print lyr.name     lyr.replaceDataSource(new_sdeworkspace_path, "SDE_WORKSPACE") mxd.saveACopy(r"E:\Data\Mxd\test\new.mxd") del mxd

Artikel-ID:000017448

Hilfe von ArcGIS-Expert*innen erhalten

Technischen Support kontaktieren

Die Esri Support-App herunterladen

Zu den Download-Optionen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden