Synchroniser les modifications (Gestion des données)

Synthèse

Synchronise les données de deux géodatabases de réplica dans une direction spécifiée.

Utilisation

  • Les réplicas monodirectionnels, bidirectionnels et d'extraction peuvent être synchronisés avec cet outil.

  • Les géodatabases de réplica peuvent être des géodatabases locales ou des services de géodonnées.

  • A l'issue de la synchronisation, les modifications (mouvements) sont répercutées dans la géodatabase cible et consultables par tous les utilisateurs.

Paramètres

ÉtiquetteExplicationType de données
Géodatabase 1

La géodatabase hébergeant le réplica à synchroniser. La géodatabase peut être locale ou distante.

Workspace; GeoDataServer
Réplica

Réplica valide avec un parent dans une géodatabase en entrée et un enfant dans l’autre géodatabase en entrée.

String
Géodatabase 2

La géodatabase hébergeant le réplica associé. La géodatabase peut être locale ou distante.

Workspace; GeoDataServer
Itinéraire

Indique la direction dans laquelle les modifications seront synchronisées : de la géodatabase 1 vers la géodatabase 2, inversement, ou dans les deux directions. Pour les réplicas d’extraction/d’insertion ou monodirectionnels, une seule direction est appropriée. Si le réplica est bidirectionnel, toutes les options sont disponibles.

  • Les deux directionsLes modifications seront synchronisées dans les deux directions. Il s’agit de l’option par défaut.
  • De la géodatabase 2 vers la géodatabase 1Les modifications seront synchronisées de la géodatabase 2 vers la géodatabase 1.
  • De la géodatabase 1 vers la géodatabase 2Les modifications seront synchronisées de la géodatabase 1 vers la géodatabase 2.
String
Règle de résolution des conflits

Spécifie le mode de résolution des conflits détectés.

  • Résoudre manuellement les conflitsLes conflits sont résolus manuellement dans l’environnement de réconciliation de versionnement.
  • Résoudre en faveur de la géodatabase 1Les conflits sont résolus en faveur de la géodatabase 1. Il s’agit de l’option par défaut.
  • Résoudre en faveur de la géodatabase 2Les conflits sont résolus en faveur de la géodatabase 2.
String
Définition des conflits

Indique le mode de définition des conflits.

  • Conflits définis par ligneUn conflit est détecté lors de la réconciliation dès lors qu’une même ligne ou entité a été modifiée dans les versions parent et enfant. Il s’agit de l’option par défaut.
  • Conflits définis par colonneUn conflit est détecté lors de la réconciliation uniquement si des modifications sont apportées au même attribut (colonne) de la même ligne ou de la même entité dans les versions parents et enfants. Les modifications effectuées sur des attributs différents ne génèrent pas de conflit lors de la réconciliation.
String

Sortie obtenue

ÉtiquetteExplicationType de données
Géodatabase 1 en sortie

La géodatabase hébergeant le réplica à synchroniser.

Workspace; GeoDataServer
Géodatabase 2 en sortie

La géodatabase hébergeant le réplica associé.

Workspace; GeoDataServer

arcpy.management.SynchronizeChanges(geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition)
NomExplicationType de données
geodatabase_1

La géodatabase hébergeant le réplica à synchroniser. La géodatabase peut être locale ou distante.

Workspace; GeoDataServer
in_replica

Réplica valide avec un parent dans une géodatabase en entrée et un enfant dans l’autre géodatabase en entrée.

String
geodatabase_2

La géodatabase hébergeant le réplica associé. La géodatabase peut être locale ou distante.

Workspace; GeoDataServer
in_direction

Indique la direction dans laquelle les modifications seront synchronisées : de la géodatabase 1 vers la géodatabase 2, inversement, ou dans les deux directions. Pour les réplicas d’extraction/d’insertion ou monodirectionnels, une seule direction est appropriée. Si le réplica est bidirectionnel, toutes les options sont disponibles.

  • BOTH_DIRECTIONSLes modifications seront synchronisées dans les deux directions. Il s’agit de l’option par défaut.
  • FROM_GEODATABASE2_TO_1Les modifications seront synchronisées de la géodatabase 2 vers la géodatabase 1.
  • FROM_GEODATABASE1_TO_2Les modifications seront synchronisées de la géodatabase 1 vers la géodatabase 2.
String
conflict_policy

Spécifie le mode de résolution des conflits détectés.

  • MANUALLes conflits sont résolus manuellement dans l’environnement de réconciliation de versionnement.
  • IN_FAVOR_OF_GDB1Les conflits sont résolus en faveur de la géodatabase 1. Il s’agit de l’option par défaut.
  • IN_FAVOR_OF_GDB2Les conflits sont résolus en faveur de la géodatabase 2.
String
conflict_definition

Indique le mode de définition des conflits.

  • BY_OBJECTUn conflit est détecté lors de la réconciliation dès lors qu’une même ligne ou entité a été modifiée dans les versions parent et enfant. Il s’agit de l’option par défaut.
  • BY_ATTRIBUTEUn conflit est détecté lors de la réconciliation uniquement si des modifications sont apportées au même attribut (colonne) de la même ligne ou de la même entité dans les versions parents et enfants. Les modifications effectuées sur des attributs différents ne génèrent pas de conflit lors de la réconciliation.
String

Sortie obtenue

NomExplicationType de données
out_geodatabase_1

La géodatabase hébergeant le réplica à synchroniser.

Workspace; GeoDataServer
out_geodatabase_2

La géodatabase hébergeant le réplica associé.

Workspace; GeoDataServer

Exemple de code

Exemple d’utilisation de la fonction Synchroniser les modifications (fenêtre Python)

L’exemple de fenêtre Python ci-dessous montre comment utiliser la fonction SynchronizeChanges dans la fenêtre Python.


import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.SynchronizeChanges_management("MyData.sde", "My2wayReplica", 
                                    "MyData_child.sde", "BOTH_DIRECTIONS",
                                    "IN_FAVOR_OF_GDB1", "BY_ATTRIBUTE")
Exemple 2 d’utilisation de la fonction Synchroniser les modifications (script autonome)

L’exemple suivant montre comment utiliser la fonction SynchronizeChanges dans un script Python autonome.

# 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)

Rubriques connexes