ジオプロセシング ツールをバッチ モードで実行すると、多数の入力データセットまたは異なるパラメーター設定を使用して、ツールを複数回実行できます。これにより、非常に少ない操作で、複数回ツールを実行することができます。たとえば、[クリップ (Clip)] ツールをバッチ モードで実行して、複数のレイヤーを同じ調査区域にクリップすることができます。
バッチは、所定のツールの複数回の反復として定義されます。選択されたツールのパラメーターのいずれかによりバッチが作動し、残りのツール パラメーターがバッチ内のすべての反復に対して一定である一方、このパラメーターは反復ごとに変化します。上の例では、バッチには [クリップ (Clip)] ツールが実行される反復が 3 回あります。各反復は、[バッチ入力フィーチャ] パラメーターのレイヤーのいずれかを使用して [クリップ (Clip)] ツールを実行します。その他のすべてのパラメーターは反復全体で一定です。
バッチ モード
注意:
一部のジオプロセシング ツールはバッチ モードをサポートしません。特に、次のようなツールはバッチに対応していないので注意が必要です。
- 複数の入力データセットを処理するツール ([インターセクト (Intersect)]、[マージ (Merge)] など)。
- マップ レイヤーを作成するツール ([フィーチャ レイヤーの作成 (Make Feature Layer)]、[ラスター レイヤーの作成 (Make Raster Layer)] など)。
バッチ モードでツールを開いて実行するには、次の手順に従ってください。
- 使用するジオプロセシング ツールを検索します。
- 該当するツールを右クリックして [バッチ] を選択します。[バッチ] コマンドが無効な場合、ツールはバッチ モードをサポートしません。
[バッチ] モードを選択すると [ジオプロセシング] ウィンドウでページが開き、バッチ ジオプロセシング ツールのさまざまなオプションを定義することができます。
- 選択したツールのうち、バッチ処理を実行するパラメーター (バッチ パラメーター) を選択します。バッチ パラメーターは、複数のデータセットや値を入力として受け入れるために指定されます。バッチ パラメーターへの入力として指定したデータセットや値のそれぞれに対し、バッチ ツールが 1 回ずつ実行します。
バッチ パラメーターの選択リストには、ツールの入力パラメーターしか含まれません。最初の入力パラメーターはデフォルトで選択されています。
2 つの入力パラメーター ([入力データセット] と [距離]) を持つツールの例を考えてみます。バッチ パラメーターとして [入力データセット] パラメーターを選択した場合、複数の入力データセットを指定することができ、バッチ ツールはそれぞれの入力データセットに対して同じ距離を使用して 1 回ずつ実行されます。一方、バッチ パラメーターとして [距離] パラメーターを選択した場合、複数の距離を指定することができ、バッチ ツールはそれぞれの距離に対して同じ入力データセットを使用して 1 回ずつ実行されます。
- バッチ ツールを一時的に保存するにとどめるか、保存するかを選択します。保存する場合は、新しいバッチ ツール名とツールボックスを指定できます。
バッチ ツールは、プログラム的に作成され、ModelBuilder 反復子を使用してバッチ処理を実行する新しいモデル ツールです。
- バッチ ツールが [開いているマップに出力データセットを追加] するかどうかを選択します。大きなバッチを何度も反復して実行するには、このオプションをオフにして、多数のレイヤーがマップに追加されないようにします。
- [次へ] をクリックします。
上記の手順が完了すると、ジオプロセシング ツールのバッチ バージョンが [ジオプロセシング] ウィンドウで開き、ツール パラメーターを指定して実行できるようになります。
バッチ ツールの実行
バッチ ツールに表示されるパラメーターは、通常のバージョンのツールとほぼ同じです。重要な違いの 1 つは、バッチ パラメーターとして選択したパラメーターのパラメーター ラベルに [バッチ] 接頭辞が付与され、複数の値の指定がサポートされることです。このバッチ パラメーターに入力する値に応じて、バッチ内でツールがさらに反復して実行されます。
たとえば、複数のデータセットに同じ名のフィールドを追加するには、次の手順を実行します。
- [フィールドの追加 (Add Field)] ツールを右クリックして [バッチ] を選択します。
- バッチ パラメーターとして [入力テーブル] を選択し、[次へ] をクリックします。
[バッチ フィールドの追加 (Batch Add Field)] ツールが開きます。
- [バッチ入力テーブル] パラメーターで、新しいフィールドが追加されたデータセットを参照して選択します。
- 新しいフィールドの名前、タイプ、およびその他に必要なパラメーター設定を入力します。
- [バッチ フィールドの追加] ツールを実行します。
出力の動的命名
ほとんどのジオプロセシング ツールは出力データセットを作成します。ツールをバッチ モードで実行する場合、ツールの出力データセットの命名には特別な注意が必要であり、バッチ ツールを反復するたびに一意の名前を使用しなくてはなりません。
バッチ ツールの出力は、出力パラメーターの %Name% 変数を使用して動的に命名されます。%Name% 変数は、各出力データセット パラメーターに自動的に含まれます。動的命名を使用する他のパラメーターには手動で追加できます。
%Name% 変数は、各反復中にバッチ パラメーターの値に置き換えられます。バッチ パラメーターの値にスペースまたは特殊文字が含まれている場合は、アンダースコアに置き換えられます。値がデータセットのパスである場合は、データセット名のみが使用されます。
注意:
%Name% 変数を出力データセット パスで使用しない場合は、各反復で同じデータセット パスが使用され、各反復は前の反復の出力を上書きします。これは、入力データセットを更新または変更するツールには適用されません。
たとえば、バッチ ツールの出力が %Name%_stats に設定され、[バッチ入力テーブル] パラメーターに「City」、「County」、および「State」という名前のテーブルが含まれている場合、バッチ ツールはそれぞれの入力の名前に由来する 3 つの出力 (「City_stats」、「County_stats」、および「State_stats」) を作成します。
パラメーター値を動的に指定するには、さらに以下の変数も便利です。%Name% 変数と同じように使用できます。
- %Workspace Name% - バッチ パラメーター内のデータのワークスペースまたはフォルダー名。
- %Path% - バッチ パラメーター内のデータのカタログの場所 (データ名または拡張子を含まない)。
- %Extension% - バッチ パラメーター内のデータの拡張子。
これらの変数は、インライン変数置換を使用してバッチ モデル ツールで定義されます。
その他のツールのバッチへの追加
使用するバッチ ツールはモデル ツールであるため、一連の処理手順を実行するツールを追加して拡張することができます。バッチ モデルを拡張する場合は、バッチ ツールを作成するときに必ず [バッチ ツールを保存する] オプションを選択しておくと、モデルが検索および編集できる場所に保存されます。
たとえば、[フィールドの追加 (Add Field)] ツールをバッチ モードで開いた場合は、[フィールド演算 (Calculate Field)] ツールを使用して [バッチ フィールドの追加] モデルを拡張することで、最初にモデルがフィールドを複数のデータセットに追加してから、そのフィールドの値を計算することができます。