ジオプロセシング ツールをバッチ モードで実行すると、多数の入力データセットまたは異なるパラメーター設定を使用して、ツールを複数回実行できます。 これにより、少ない操作で、複数回ツールを実行することができます。 たとえば、[クリップ (Clip)] ツールをバッチ モードで実行して、複数のレイヤーを同じ調査区域にクリップすることができます。
バッチは、所定のツールの複数回の反復として定義されます。 選択されたツールのパラメーターのいずれかによりバッチが制御され、残りのツール パラメーターがバッチ内のすべての反復に対して一定である一方、このパラメーターは反復ごとに変化します。 上の例では、バッチには [クリップ (Clip)] ツールが実行される反復が 3 回あります。 各反復は、[バッチ入力フィーチャ] パラメーターのレイヤーのいずれかを使用して [クリップ (Clip)] ツールを実行します。その他のすべてのパラメーターは反復全体で一定です。
バッチ モードで実行するためのツールの構成
注意:
一部のジオプロセシング ツールはバッチ モードをサポートしません。 特に、次のようなツールはバッチ モードに対応していないので注意が必要です。
- 複数の入力データセットを処理するツール ([インターセクト (Intersect)] や [マージ (Merge)] など)
- マップ レイヤーを作成するツール ([フィーチャ レイヤーの作成 (Make Feature Layer)] や [ラスター レイヤーの作成 (Make Raster Layer)] など)。
バッチ モードで実行されるようにツールを構成するには、次の手順を実行します。
- 使用するジオプロセシング ツールを検索します。
- 該当するツールを右クリックして [バッチ] を選択します。
[バッチ] コマンドが無効な場合、ツールはバッチ モードをサポートしません。
- [バッチ] モードを選択すると [ジオプロセシング] ウィンドウでページが開き、バッチ ジオプロセシング ツールのさまざまなオプションを定義することができます。
- バッチ処理を実行するツール パラメーター (バッチ パラメーター) を選択します。 バッチ パラメーターは、複数のデータセットや値を入力として受け入れるために指定されます。 バッチ パラメーターへの入力として指定したデータセットや値のそれぞれに対し、バッチ ツールが 1 回ずつ実行されます。 バッチ パラメーターのリストには、ツールの入力パラメーターしか含まれません。 最初の入力パラメーターはデフォルトで選択されています。
2 つの入力パラメーター (Input Dataset と Distance) を持つツールの例を考えてみます。 バッチ パラメーターとして Input Dataset パラメーターを選択した場合、複数の入力データセットを指定することができ、バッチ ツールはそれぞれの入力データセットに対して同じ距離を使用して 1 回ずつ実行されます。 一方、バッチ パラメーターとして Distance パラメーターを選択した場合、複数の距離を指定することができ、バッチ ツールはそれぞれの距離に対して同じ入力データセットを使用して 1 回ずつ実行されます。
- バッチ ツールを一時的なものにするか、保存するかを指定します。 保存する場合は、新しいバッチ ツール名と保存先のツールボックスを指定できます。
バッチ ツールは、プログラム的に作成され、ModelBuilder 反復子を使用してバッチ処理を実行する新しいモデル ツールです。
- [開いているマップに出力データセットを追加] をオンまたはオフにします。 大きなバッチを何度も反復して実行するには、このオプションをオフにして、多数のレイヤーがマップに追加されないようにします。
- [次へ] をクリックします。
上記の手順が完了すると、ジオプロセシング ツールのバッチ バージョンが [ジオプロセシング] ウィンドウで開き、ツール パラメーターを指定して実行できるようになります。
バッチ モードでのツールの実行
バッチ ツールに表示されるパラメーターは、通常のバージョンのツールとほぼ同じです。 重要な違いの 1 つは、バッチ パラメーターとして選択したパラメーターのパラメーター ラベルに [バッチ] 接頭辞が表示されるようになり、複数の値の指定がサポートされることです。 このバッチ パラメーターに入力する値に応じて、バッチ内でツールがさらに反復して実行されます。
たとえば、複数のデータセットに同じ名前のフィールドを追加するには、次の手順を実行します。
- [フィールドの追加 (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)] ツールを使用して [バッチ フィールドの追加] モデルを拡張することで、最初にモデルがフィールドを複数のデータセットに追加してから、そのフィールドの値を計算することができます。