Änderungen synchronisieren (Data Management)
Zusammenfassung
Synchronisiert Updates zwischen zwei Replikat-Geodatabases in eine vom Benutzer angegebene Richtung.
Verwendung
-
Mit diesem Werkzeug werden Replikate in einer vernetzten Umgebung synchronisiert. Um Replikate im Offlinemodus zu synchronisieren, verwenden Sie die Werkzeuge Export_Data_Change_Message, Meldungen importieren, Bestätigungsmeldungen exportieren und Unbestätigte Meldungen erneut exportieren.
-
Damit können bi- und unidirektionale Replikate sowie Check-Out-Replikate synchronisiert werden.
-
Die Replikat-Geodatabases können lokale Geodatabases oder Geodaten-Services sein.
-
Nach der Synchronisierung werden die Änderungen (Bearbeitungen) in der Ziel-Geodatabase wiedergegeben und können von allen Benutzern angezeigt werden.
Syntax
Parameter | Erläuterung | Datentyp |
geodatabase_1 |
Die Geodatabase, die das zu synchronisierende Replikat enthält. Die Geodatabase kann lokal oder remote sein. | Workspace ;GeoDataServer |
in_replica |
Ein gültiges Replikat mit einem Parent-Replikat innerhalb einer Eingabe-Geodatabase und einem Child-Replikat in der anderen Eingabe-Geodatabase. | String |
geodatabase_2 |
Die Geodatabase, die das jeweilige Replikat enthält. Die Geodatabase kann lokal oder remote sein. | Workspace; GeoDataServer |
in_direction |
Die Richtung, in der Änderungen gesendet werden sollen: von Geodatabase 1 zu Geodatabase 2, von Geodatabase 2 zu Geodatabase 1 oder in beide Richtungen. Für Check-Out-/Check-In-Replikate und unidirektionale Replikate gibt es nur eine Richtung. Bei bidirektionalen Replikaten kann eine der drei Optionen ausgewählt werden.
| String |
conflict_policy |
Gibt an, wie ermittelte Konflikte behoben werden.
| String |
conflict_definition |
Gibt an, wie Konflikte definiert werden sollen.
| String |
reconcile Abgleichen |
Gibt an, ob ein automatischer Abgleich durchgeführt werden soll, sobald die Datenänderungen an das Parent-Replikat gesendet werden und sofern keine Konflikte bestehen. Diese Option ist nur für Check-Out-/Check-In-Replikate verfügbar.
| Boolean |
Codebeispiel
Im folgenden Beispiel wird veranschaulicht, wie Sie die Funktion "SynchronizeChanges" im Python-Fenster verwenden.
import arcpy
from arcpy import env
env.workspace = "C:/Data"
arcpy.SynchronizeChanges_management("MySDEdata.sde", "My2wayReplica", "MySDEdata_child.sde", "BOTH_DIRECTIONS", "IN_FAVOR_OF_GDB1", "BY_ATTRIBUTE", "")
Das folgende Python-Skript veranschaulicht, wie die Funktion "SynchronizeChanges" in einem eigenständigen Python-Skript verwendet wird.
# Name: SynchronizeChanges_Example2.py
# Description: Synchronizes changes for a one way replica from the Parent
# to the child replica geodatabase. The parent is an ArcSDE workspace, and the child is file geodatabase.
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data"
# Set local variables
replica_gdb1 = "MySDEdata.sde"
replica_gdb2 = "Counties_replica.gdb"
replica_name = "MyOneWayReplica"
sync_direction = "FROM_GEODATABASE1_TO_2"
conflict_policy = "" # Not applicable for one way replicas, there is not conflict detection.
conflict_detection = "" # Not applicable for one way replicas, there is not conflict detection.
reconcile = "" # Only applicable for Checkout replicas
# Execute SynchronizeChanges
arcpy.SynchronizeChanges_management(replica_gdb1, replica_name, replica_gdb2, sync_direction, conflict_policy, conflict_detection, reconcile)