Synchroniser les modifications (Gestion des données)

Résumé

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

Utilisation

  • Cet outil est utilisé lors de la synchronisation de réplicas en mode connecté.

  • 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.

Syntaxe

arcpy.management.SynchronizeChanges(geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition, reconcile)
ParamètreExplicationType 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_ATTRIBUTE Un 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
reconcile

Indique si une réconciliaton automatique doit être effectuée une fois les modifications de données envoyées au réplica parent en l’absence de conflits. Cette option n'est disponible que pour les réplicas d'extraction/d'insertion.

  • DO_NOT_RECONCILEPas de réconciliation. avec la version parent Il s’agit de l’option par défaut.
  • RECONCILERéconciliation avec la version parent.
Boolean

Sortie dérivée

NomExplicationType de données
out_geodatabase_1

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

Espace de travail ; Serveur de géodonnées
out_geodatabase_2

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

Espace de travail ; Serveur de géodonnées

Exemple de code

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

L’exemple de fenêtre Python suivant illustre l’utilisation de 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)

Vous trouverez ci-dessous une illustration de l’utilisation de la fonction SynchronizeChanges dans un script autonome Python.

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

Informations de licence

  • Basic: Non
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes