Resumen
Sincroniza actualizaciones entre dos geodatabases de réplica en una dirección especificada.
Uso
Esta herramienta se utiliza para sincronizar réplicas en el modo con conexión. Para sincronizar réplicas en modo desconectado, consulte las herramientas Exportar mensaje de cambio de datos, Importar mensaje, Exportar mensaje de reconocimiento y Volver a exportar mensajes no reconocidos.
Las réplicas unidireccionales, dobles y de check-out se pueden sincronizar con esta herramienta.
Las geodatabases de réplica pueden ser geodatabases locales o servicios de geodatos.
Una vez sincronizadas, los cambios (ediciones) se reflejarán en la geodatabase de destino y los podrán ver todos los usuarios.
Sintaxis
arcpy.management.SynchronizeChanges(geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition, reconcile)
Parámetro | Explicación | Tipo de datos |
geodatabase_1 | Geodatabase que aloja la réplica que se sincronizará. La geodatabase puede ser local o remota. | Workspace; GeoDataServer |
in_replica | Una réplica válida con una principal en una geodatabase de entrada y una secundaria en la otra geodatabase de entrada. | String |
geodatabase_2 | Geodatabase que aloja la réplica relativa. La geodatabase puede ser local o remota. | Workspace; GeoDataServer |
in_direction | Especifica la dirección en la que se sincronizarán los cambios: de geodatabase 1 a geodatabase 2, de geodatabase 2 a geodatabase 1, o en ambas direcciones. Para réplicas de check-in/check-out o réplicas unidireccionales, solo existe una dirección adecuada. Si la réplica es bidireccional, todas las opciones estarán disponibles.
| String |
conflict_policy | Especifica cómo se resuelven los conflictos cuando aparecen.
| String |
conflict_definition | Especifica cómo se definirán los conflictos.
| String |
reconcile | Especifica si conciliar automáticamente una vez enviados los cambios de los datos a la réplica principal en caso de que no haya conflictos. Esta opción solo está disponible para las réplicas de check-out/check-in.
| Boolean |
Salida derivada
Nombre | Explicación | Tipo de datos |
out_geodatabase_1 | Geodatabase que aloja la réplica que se sincronizará. | Workspace; GeoDataServer |
out_geodatabase_2 | Geodatabase que aloja la réplica relativa. | Workspace; GeoDataServer |
Muestra de código
Ejemplo de SynchronizeChanges (ventana de Python)
En el siguiente ejemplo de ventana de Python se muestra cómo utilizar la función SynchronizeChanges en la ventana de 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")
Ejemplo 2 de SynchronizeChanges (script independiente)
A continuación, se muestra cómo utilizar la función SynchronizeChanges en un script de Python independiente.
# 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)
Entornos
Información de licenciamiento
- Basic: No
- Standard: Sí
- Advanced: Sí