Zusammenfassung
Synchronisiert Updates zwischen zwei Replikat-Geodatabases in eine vom Benutzer angegebene Richtung.
Verwendung
Dieses Werkzeug wird zum Synchronisieren von Replikaten im verbundenen Modus verwendet. Weitere Informationen zum Synchronisieren von Replikaten finden Sie in den Abschnitten zu den Werkzeugen Datenänderungsmeldung exportieren, Meldungen importieren, Bestätigungsmeldungen exportieren und Unbestätigte Meldungen erneut exportieren.
Mit diesem Werkzeug können unidirektionale, bidirektionale und Check-Out-Replikate synchronisiert werden.
Die Replikat-Geodatabases können lokale Geodatabases oder Geodaten-Services sein.
Die Änderungen (Bearbeitungen) sind nach dem Synchronisieren in der Ziel-Geodatabase enthalten und können von allen Benutzern angezeigt werden.
Syntax
SynchronizeChanges_management (geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition, reconcile)
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 relative 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 an Geodatabase 2, von Geodatabase 2 an Geodatabase 1 oder in beide Richtungen. Für Check-Out-/Check-In-Replikate und unidirektionale Replikate gibt es nur eine geeignete 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 | Legt fest, wie Konflikte definiert werden sollen:
| String |
reconcile reconcile | 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
SynchronizeChanges – Beispiel (Python-Fenster)
Mit dem folgenden Beispiel im Python-Fenster wird gezeigt, wie die Funktion "SynchronizeChanges" im Python-Fenster verwendet wird.
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", "")
SynchronizeChanges – Beispiel 2 (eigenständiges Python-Skript)
Nachfolgend wird 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.
# 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)
Umgebung
Lizenzierungsinformationen
- ArcGIS for Desktop Basic: Nein
- ArcGIS for Desktop Standard: Ja
- ArcGIS for Desktop Advanced: Ja