概要
指定された同期方向で、2 つのレプリカ ジオデータベース間の変更を同期します。
使用法
このツールは、接続環境でレプリカを同期させる場合に使用されます。 非接続環境でレプリカを同期させるには、[データ変更メッセージのエクスポート (Export Data Change Message)]、[メッセージのインポート (Import Message)]、[承認メッセージのエクスポート (Export Acknowledgement Message)]、および [非承認メッセージの再エクスポート (Re-Export Unacknowledged Messages)] ツールをご参照ください。
このツールを使って、双方向レプリカ、一方向レプリカ、およびチェックアウト レプリカを同期させることができます。
レプリカ ジオデータベースとして、ローカル ジオデータベースまたはジオデータ サービスを使用できます。
いったん同期すると、変更 (編集) 内容はターゲット ジオデータベースに反映され、すべてのユーザーが参照できるようになります。
構文
arcpy.management.SynchronizeChanges(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]、または [両方] の方向に同期します。 チェックアウト/チェックイン レプリカまたは一方向レプリカの場合、適切な方向は一方向だけです。 双方向レプリカの場合、すべての選択肢を選択できます。
| String |
conflict_policy | 競合が検出された場合の、競合の解決方法を指定します。
| String |
conflict_definition | 競合を定義する方法を指定します。
| String |
reconcile | データの変更が親レプリカに送信された際に、競合が存在しない場合は親レプリカに自動的に変更をリコンサイルするかどうかを指定します。 このオプションは、チェックアウト/チェックイン レプリカの場合にのみ有効となります。
| Boolean |
派生した出力
名前 | 説明 | データ タイプ |
out_geodatabase_1 | 同期するレプリカをホストしているジオデータベース。 | Workspace; GeoDataServer |
out_geodatabase_2 | 相対レプリカをホストしているジオデータベース。 | Workspace; GeoDataServer |
コードのサンプル
SynchronizeChanges (変更の同期) の例 (Python ウィンドウ)
次の Python ウィンドウの例は、SynchronizeChanges 関数を 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")
SynchronizeChanges (変更の同期) の例 2 (スタンドアロン スクリプト)
次の例は、SynchronizeChanges 関数をスタンドアロン 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)
環境
ライセンス情報
- Basic: いいえ
- Standard: はい
- Advanced: はい