Änderungen synchronisieren (Data Management)

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.

  • Mit diesem Werkzeug können unidirektionale, bidirektionale und Check-Out-Replikate synchronisiert werden.

  • Die Replikat-Geodatabases können lokale Geodatabases oder Geodatenservices sein.

  • Die Änderungen (Bearbeitungen) sind nach dem Synchronisieren in der Ziel-Geodatabase enthalten und können von allen Benutzern angezeigt werden.

Syntax

SynchronizeChanges(geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition, reconcile)
ParameterErklärungDatentyp
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

Gibt die Richtung an, in der Änderungen gesendet werden sollen: von Geodatabase 1 an Geodatabase 2, von Geodatabase 2 an Geodatabase 1 oder in beide Richtungen. Bei Check-Out-/Check-In-Replikaten und unidirektionalen Replikaten ist jeweils nur eine Richtungsoption geeignet. Bei bidirektionalen Replikaten kann eine der drei Optionen ausgewählt werden.

  • BOTH_DIRECTIONSÄnderungen werden in beiden Richtungen synchronisiert. Hierbei handelt es sich um die Standardeinstellung.
  • FROM_GEODATABASE2_TO_1Änderungen werden von Geodatabase 2 zu Geodatabase 1 synchronisiert.
  • FROM_GEODATABASE1_TO_2Änderungen werden von Geodatabase 1 zu Geodatabase 2 synchronisiert.
String
conflict_policy

Gibt an, wie ermittelte Konflikte behoben werden.

  • MANUALManuelle Beseitigung von Konflikten in der Umgebung zum Abgleich der Versionierung.
  • IN_FAVOR_OF_GDB1Konflikte werden zugunsten von Geodatabase 1 gelöst. Dies ist die Standardeinstellung.
  • IN_FAVOR_OF_GDB2Konflikte werden zugunsten von Geodatabase 2 gelöst.
String
conflict_definition

Gibt an, wie Konflikte definiert werden.

  • BY_OBJECT Alle Änderungen an derselben Zeile oder demselben Feature in der Parent- oder Child-Version führen beim Abgleich zu einem Konflikt. Dies ist die Standardeinstellung.
  • BY_ATTRIBUTE Nur Änderungen an demselben Attribut (Spalte) aus derselben Zeile oder demselben Feature in der Parent- oder Child-Version führen beim Abgleich zu einem Konflikt. Änderungen an verschiedenen Attributen haben beim Abgleich keinen Konflikt zur Folge.
String
reconcile

Gibt an, ob ein automatischer Abgleich durchgeführt wird, sobald Datenänderungen an das Parent-Replikat gesendet werden, vorausgesetzt dass keine Konflikte bestehen. Diese Option ist nur für Check-Out-/Check-In-Replikate verfügbar.

  • DO_NOT_RECONCILEEs wird kein Abgleich mit der Parent-Version durchgeführt. Dies ist die Standardeinstellung.
  • RECONCILEEs wird ein Abgleich mit der Parent-Version durchgeführt.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_geodatabase_1

Die Geodatabase, die das zu synchronisierende Replikat enthält.

Workspace; GeoDataServer
out_geodatabase_2

Die Geodatabase, die das relative Replikat enthält.

Workspace; GeoDataServer

Codebeispiel

SynchronizeChanges – Beispiel (Python-Fenster)

Im folgenden Beispiel für das Python-Fenster wird veranschaulicht, wie die Funktion SynchronizeChanges im Python-Fenster verwendet wird.

import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.SynchronizeChanges_management("MyData.sde", "My2wayReplica", 
                                    "MyData_child.sde", "BOTH_DIRECTIONS",
                                    "IN_FAVOR_OF_GDB1", "BY_ATTRIBUTE")
SynchronizeChanges – Beispiel 2 (eigenständiges Skript)

Im Folgenden 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 enterprise geodatabase workspace, and the 
# child is file geodatabase.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data"
# Set local variables
replica_gdb1 = "MyData.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)

Lizenzinformationen

  • Basic: Nein
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen