変更の同期(Synchronize Changes) (データ管理)

ライセンス レベル:BasicStandardAdvanced

サマリ

ユーザによって指定された同期方向で、2 つのレプリカ ジオデータベース間の変更を同期します。

使用法

構文

SynchronizeChanges_management (geodatabase_1, in_replica, geodatabase_2, in_direction, conflict_policy, conflict_definition, reconcile)
パラメータ説明データ タイプ
geodatabase_1

同期するレプリカをホストしているジオデータベース。ジオデータベースは、ローカルでもリモートでもかまいません。

Workspace ;GeoDataServer
in_replica

ある入力ジオデータベース内に親レプリカが格納されていて、他の入力ジオデータベース内に子レプリカが格納されている有効なレプリカ。

String
geodatabase_2

相対レプリカをホストしているジオデータベース。ジオデータベースは、ローカルでもリモートでもかまいません。

Workspace; GeoDataServer
in_direction

変更内容を送信する方向。[ジオデータベース 1 → ジオデータベース 2]、[ジオデータベース 2 → ジオデータベース 1]、または [両方] の方向に変更内容を送信します。チェックアウト/チェックイン レプリカまたは一方向レプリカの場合、適切な方向は一方向だけです。双方向レプリカの場合、3 つの選択肢のいずれかを選択できます。

  • BOTH_DIRECTIONS変更内容は、双方向で同期されます。
  • FROM_GEODATABASE2_TO_1変更内容はジオデータベース 2 からジオデータベース 1 に同期されます。
  • FROM_GEODATABASE1_TO_2変更内容はジオデータベース 1 からジオデータベース 2 に同期されます。
String
conflict_policy

競合が検出された場合の、競合の解決方法を指定します。

  • MANUALバージョニングのリコンサイルを使用して、競合を手動で解決します。
  • IN_FAVOR_OF_GDB1ジオデータベース 1 を優先して競合を自動で解決します。
  • IN_FAVOR_OF_GDB2ジオデータベース 2 を優先して競合を自動で解決します。
String
conflict_definition

競合を定義する方法を指定します。

  • BY_OBJECT行による競合を検出します。
  • BY_ATTRIBUTE列による競合を検出します。
String
reconcile
reconcile

データの変更が親レプリカに送信された際に、競合が存在しない場合は親レプリカに自動的に変更をリコンサイルするかどうかを示します。このオプションは、チェックアウト/チェックイン レプリカの場合にのみ有効となります。

  • DO_NOT_RECONCILEリコンサイルしません。これはデフォルト設定です。
  • RECONCILEリコンサイルします。
Boolean

コードのサンプル

SynchronizeChanges(変更の同期)の例(Python ウィンドウ)

次の Python ウィンドウの例は、Python ウィンドウで SynchronizeChanges(変更の同期)関数を使用する方法を示しています。

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", "")
SynchronizeChanges(変更の同期)の例 2(スタンドアロン Python スクリプト)

次の例は、スタンドアロン Python スクリプトで SynchronizeChanges(変更の同期)関数を使用する方法を示しています。

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

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

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: ×
ArcGIS for Desktop Standard: ○
ArcGIS for Desktop Advanced: ○
7/28/2014