バージョンのリコンサイル(Reconcile Versions) (データ管理)

ライセンス レベル:BasicStandardAdvanced

サマリ

ターゲットバージョンに対して 1 つまたは複数のバージョンをリコンサイルします。

使用法

構文

ReconcileVersions_management (input_database, reconcile_mode, {target_version}, {edit_versions}, {acquire_locks}, {abort_if_conflicts}, {conflict_definition}, {conflict_resolution}, {with_post}, {with_delete}, {out_log})
パラメータ説明データ タイプ
input_database

リコンサイルするバージョンを含むエンタープライズ ジオデータベース。デフォルトでは、その環境で定義されているワークスペースが使用されます。

Workspace
reconcile_mode

ツールの実行時にどのバージョンをリコンサイルするかを決定します。

  • ALL_VERSIONS編集バージョンをターゲット バージョンとリコンサイルします。これはデフォルト設定です。
  • BLOCKING_VERSIONSターゲット バージョンの圧縮をブロックしているバージョンをリコンサイルします。このオプションでは、推奨されるリコンサイル順序が使用されます。
String
target_version
(オプション)

編集バージョンの直系に当たる任意の上位バージョン(親バージョンやデフォルト バージョンなど)の名前。

一般的に、リコンサイルを実行しているユーザが自分の編集バージョンに取り込もうとしている、他のバージョンの編集が含まれます。

String
edit_versions
[edit_versions,...]
(オプション)

選択したターゲット バージョンに対してリコンサイルされる 1 つまたは複数の編集バージョンの名前。個別のバージョン名を指定するか、バージョン名の Python リストを指定します。

String
acquire_locks
(オプション)

フィーチャのロックを取得するかどうかを指定します。

  • LOCK_ACQUIREDリコンサイル プロセス中にロックを取得します。これは、編集データをポストするときに使用します。こうすると、リコンサイルおよびポスト操作の間にターゲットのバージョンが変更されません。これはデフォルト設定です。
  • NO_LOCK_ACQUIREDリコンサイル プロセス中にロックを取得しません。これにより、複数のユーザが同時にリコンサイルを実行できます。これは、リコンサイルおよびポスト操作の間にターゲット バージョンが変更された可能性があるために、編集バージョンがターゲット バージョンにポストされないときに使用します。
Boolean
abort_if_conflicts
(オプション)

ターゲット バージョンと編集バージョン間の競合が検出された場合に、リコンサイル プロセスを中断するかどうかを指定します。

  • NO_ABORT競合が検出された場合でも、リコンサイルを中断しません。これはデフォルト設定です。
  • ABORT_CONFLICTS競合が検出された場合に、リコンサイルを中断します。
Boolean
conflict_definition
(オプション)

競合の発生に必要な条件を記述します。

  • BY_OBJECT親バージョン内と子バージョン内の同じ行またはフィーチャに加えたすべての変更に対して、リコンサイル中に競合を発生させます。これはデフォルト設定です。
  • BY_ATTRIBUTE親バージョン内と子バージョン内の同じ行またはフィーチャの同じ属性に加えた変更に対してのみ、リコンサイル中に競合フラグを設定します。親バージョンと子バージョンで異なる属性に加えた変更は、リコンサイル中に競合とはみなされません。
Boolean
conflict_resolution
(オプション)

競合が検出された場合の動作を記述します。

  • FAVOR_TARGET_VERSIONすべての競合において、ターゲット バージョンを優先して解決します。これはデフォルト設定です。
  • FAVOR_EDIT_VERSIONすべての競合において、編集バージョンを優先して解決します。
String
with_post
(オプション)

リコンサイル後のターゲット バージョンに、現在の編集セッションをポストします。

  • NO_POSTリコンサイル後のターゲット バージョンに、現在の編集バージョンをポストしません。これはデフォルト設定です。
  • POSTリコンサイル後のターゲット バージョンに、現在の編集バージョンをポストします。
Boolean
with_delete
(オプション)
  • DELETE_VERSIONリコンサイルされた現在の編集バージョンを、ターゲット バージョンにポストした後に削除します。
  • KEEP_VERSIONリコンサイルされた現在の編集バージョンを削除しません。これはデフォルト設定です。
Boolean
out_log
(オプション)

出力されるログ ファイルの名前と場所を指定します。ログ ファイルは、ジオプロセシング メッセージの内容を含む ASCII ファイルです。

File

コードのサンプル

ReconcileVersions(バージョンのリコンサイル)の例(スタンドアロン スクリプト):

次のスタンドアロン スクリプトは、ReconcileVersions(バージョンのリコンサイル)ツールを使用して、SDE 接続ファイルで指定されたユーザが所有するすべてのバージョンをリコンサイルする方法を示しています。

# Name: ReconcileVersions.py
# Description: Reconciles all versions owned by a user with SDE.Default

# Import system modules
import arcpy, os
from arcpy import env

# Set workspace
workspace = r'c:\Connections\bender@production.sde'

# Set the workspace environment
env.workspace = workspace

# Use a list comprehension to get a list of version names where the owner
# is the current user and make sure sde.default is not selected.
verList = [ver.name for ver in arcpy.da.ListVersions() if ver.isOwner
           == True and ver.name.lower() != 'sde.default']

arcpy.ReconcileVersions_management(workspace,
                                   "ALL_VERSIONS",
                                   "SDE.Default",
                                   verList,
                                   "LOCK_ACQUIRED",
                                   "NO_ABORT",
                                   "BY_OBJECT",
                                   "FAVOR_TARGET_VERSION",
                                   "NO_POST",
                                   "KEEP_VERSION",
                                   "c:\RecLog.txt")
print 'Reconciling Complete'

環境

関連トピック

ライセンス情報

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