Синхронизировать изменения (Управление данными)
Резюме
Синхронизирует обновления между двумя базами геоданных реплики в направлении, указанным пользователем.
Использование
-
Этот инструмент используется при синхронизации реплик в подключенном режиме. Для синхронизации реплик в автономном режиме, см. инструменты Экспорт сообщения об изменении данных (Export Data Change Message), Импорт сообщения (Import Message), Экспорт подтвержденного сообщения (Export Acknowledgement Message) и Ре-экспорт неподтвержденного сообщения (Re-Export Unacknowledged Messages).
-
Двусторонние, односторонние реплики и реплики открепления могут быть синхронизированы с этим инструментом.
-
Эти базы геоданных реплик могут быть локальными базами геоданных или сервисами геоданных.
-
После синхронизации, изменения будут отображаться в целевой базе геоданных и будут видимы для пользователей.
Синтаксис
Параметр | Объяснение | Тип данных |
geodatabase_1 |
База геоданных, являющаяся репликой синхронизации. База геоданных может быть локальной или удаленной. | Workspace ;GeoDataServer |
in_replica |
Корректная реплика с реплика высшего порядка в пределах одной входной базы геоданных и с репликой низшего порядка в другой входной базе геоданных. | String |
geodatabase_2 |
База геоданных, являющаяся относительной репликой. База геоданных может быть локальной или удаленной. | Workspace; GeoDataServer |
in_direction |
Направление, в котором необходимо отправить изменения: из базы геоданных 1 в базу геоданных 2, из базы геоданных 2 в базу геоданных 1 или в обоих направлениях. Для реплик открепления/прикрепления или односторонних реплик существует только одно подходящее направление. Если реплика двусторонняя, доступны три вариантов.
| String |
conflict_policy |
Укажите, как будут разрешаться встречающиеся конфликты.
| String |
conflict_definition |
Задает, как вы предпочитаете определять конфликты:
| String |
reconcile reconcile |
Означает автоматическое согласование как только изменения данных отправляются в родительскую реплику в случае наличия конфликтов. Эта опция доступна только для реплик открепления/прикрепления.
| Boolean |
Пример кода
Пример скрипта Python для выполнения функции Синхронизировать изменения (Synchronize Changes) в окне Python.
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", "")
Пример скрипта Python для выполнения функции Синхронизировать изменения (Synchronize Changes) в автономном режиме.
# 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.
# Author: ESRI
# 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)