スクリプト ツールの作成

1 つのスクリプト ツールが、1 つのスクリプトまたは実行可能なファイル タイプを実行するジオプロセシング ツールになります。 スクリプト ツールは、ジオプロセシング ツールをスクリプトへのインターフェイスとして使用し、これらのスクリプトを実行します。 スクリプト ツールを作成するときは、スクリプトの実行に必要なパラメーターを指定します。 最も一般的なパラメーターとして、入力および出力データセット、フィールド名、選択リストから選択する文字列があります。 スクリプト ツールが実行されると、パラメーター値がスクリプトに渡され、スクリプトによって使用されます。

多くのスクリプト ツールが ArcPy を使用する Python スクリプト (.py) を実行します。ArcPy は ArcGIS に付属してインストールされる Python サイト パッケージです。 ArcPy は、ジオプロセシング ツールへのアクセスだけでなく、単純または複雑なワークフローを作成するための追加機能、クラス、モジュールへのアクセスも提供します。 ArcPy を使用すると、スクリプトから ArcGIS のジオプロセシング環境にアクセスできます。これにより、リアルタイム投影、選択セットのサポート、入力の検証、エラー メッセージ、履歴の記録などの利点が得られます。

スクリプト ツールは、arcgisbinding R ライブラリを使用する R スクリプト (.r) を実行することもできます。

R-ArcGIS Bridge の詳細

スクリプト ツールはツールボックスで作成されます。 スクリプト ツールを作成するには、[カタログ] ウィンドウ内のツールボックスを右クリックして、[新規作成] > [スクリプト] の順に選択します。

プロパティ

スクリプト ツールを作成すると、新しく作成したスクリプト ツールのプロパティ ダイアログ ボックスが開き、以下のサイド タブが表示されます。

  • 一般
  • パラメーター
  • 実行
  • 検証
  • 環境

一般タブ

[一般] タブには、次のプロパティがあります:

  • [名前] - ツールを識別する、内部的な一意の名前。
  • [ラベル] - ツールの名前で、ツールボックスに表示されるほか、ツール ダイアログ ボックスでツールが開いているときにも表示されます。
  • [説明] - ツールにポインターを合わせると表示される、ツールに関する簡単な説明。
  • [サマリー] - 開いているツール ダイアログ ボックス上のヘルプ アイコンにマウス ポインターを合わせると表示される、ツールの説明。
  • [図] - 開いているツール ダイアログ ボックス上のヘルプ アイコンにマウス ポインターを合わせたときに、ツールのサマリーと共に表示される画像。
  • [属性]
    • [ツールが入力データを変更するバナーを表示] - このオプションをオンにすると、ツール ダイアログ ボックスの上端にバナーが表示され、そのツールが入力データを変更することが示されます。
    • [ツールの出力をマップに追加しません] - このオプションをオンにすると、ツールの出力データセットが開いているマップに自動的に追加されます。
      注意:

      出力データセットを開いているマップに追加するジオプロセシング オプションもオンになっているなら、ツール プロパティの属性が優先されます。

    • [元に戻すの有効化切り替えボタンを表示] - このオプションをオンにすると、ツール ダイアログ ボックスで [実行] ボタンの横に元に戻すの有効化トグル ボタンが表示されます。
    • [ツールが ArcGIS クレジットを消費するバナーを表示] - このオプションをオンにすると、ツールがクレジットを消費するなら、ツール ダイアログ ボックスの上端にバナーが表示されます。
  • [アイコン] - ツールがリボン、クイック アクセス ツールバー、または解析ツール ギャラリーに追加されるときに表示される小さい画像。

プロパティを変更するには、テキスト ボックスに値を入力するか、アイコンをクリックし、図またはアイコンとして使用する新しい画像ファイルを参照します。

注意:

ツールボックスがレガシー ツールボックス (.tbx) の場合は、ツールボックス ファイルからツールのソース スクリプトへの相対パスが格納されるプロパティもあります。 ツールボックスが ArcGIS ツールボックス (.atbx) の場合、この動作は別の方法で管理されます。 スクリプトが .atbx ファイルと同じディレクトリにある場合や、.atbx の格納場所の子フォルダーにある場合は、相対パスが保持されます。 スクリプトと .atbx ファイルが完全に分かれている場合は、絶対パスが保持されます。

注意:

ツールボックスがレガシー ツールボックス (.tbx) の場合、[サマリー][図][アイコン]、および [属性] プロパティはサポートされません。

パラメーター タブ

[パラメーター] タブには、パラメーターのプロパティのテーブルが示され、1 行に 1 つのパラメーターが表示されます。 デフォルトでは、テーブルは空になります。 パラメーターごとに複数のプロパティを定義します。たとえば、[ジオプロセシング] ウィンドウに表示されるラベル、パラメーターが受け入れるデータのタイプ、パラメーターがオプションであるか必須であるかなどを定義します。 最低でも、パラメーターの [ラベル][名前][データ タイプ][タイプ][方向] プロパティを設定します。

プロパティ説明

ラベル

ツール上に表示されるパラメーターの名前。

名前

スクリプト ツールが別の Python スクリプトから関数として呼び出されるときのパラメーターの名前。

データ タイプ

パラメーターが受け入れるデータのタイプを指定します。 これによって、ツールで使用されるコントロールが決定します。 たとえば、[フィーチャ レイヤー] を選択すると、アクティブなマップからレイヤーを選択したり、フィーチャクラスを参照したりできます。

タイプ

パラメーターには、必須とオプションがあります。 必須のパラメーターには必ず値を指定する必要があります。指定しないとツールは実行できません。 オプションのパラメーターには値を指定しなくても、ツールは実行できます。

方向

パラメーターには、入力と出力があります。 入力パラメーターは、処理対象の既存のデータまたは処理で使用される値を表します。 出力パラメーターは、ツールが作成したデータまたは計算された値を表します。

説明

各ツール パラメーターについての文書ヘルプで、説明、情報、および受け入れられるデータ タイプと値が含まれます。 パラメーターのラベルの横にある [情報] 情報 ボタンの上にポインターを置くと、ツール ダイアログ ボックスにパラメーターの説明が表示されます。

カテゴリ

カテゴリの名前を入力すると、ツールのダイアログ ボックスにドロップダウン グループのパラメーターが配置されます。

フィルター

フィルターを適用して、特定タイプのデータセット、ファイル、またはフィールド、特定の値、ツールへの入力値として使用できる範囲内の値を制限することができます。 たとえば、ポイント フィーチャクラスのみを受け入れるようにフィーチャクラスのパラメーターをフィルターしたり、1 ~ 10 までの数字のみを受け入れるように数字のパラメーターをフィルターしたりできます。

依存関係

パラメーターを別のパラメーターに依存させることができます。 たとえば、フィールド パラメーターをデータセット パラメーターに依存させます。この依存関係を設定すると、依存するデータセットからフィールドを選択できるようになります。

デフォルト

ツールのダイアログ ボックスが表示されるとき、パラメーターに自動的に設定される値。

環境

パラメーターは、ジオプロセシング環境からデフォルト値を取得できます。 特定のジオプロセシング環境が設定されると、ツールのダイアログ ボックスが表示されるとき、指定のパラメーターのデフォルトとしてその値が使用されます。

シンボル

パラメーターのシンボルを定義するレイヤー ファイルのパス。 たとえば、出力データセットが作成されマップに追加されるときに、出力データセットのパラメーターのレイヤー ファイルのシンボルを同じにすることができます。

実行タブ

[実行] タブには、スクリプト ツールのソース コードに関連するプロパティや、Python または R スクリプト ファイルへのパスが含まれています。 このタブには、スクリプト ツールのソース コードを埋め込んでパスワード保護するオプションや、ソース コードを新しいファイルにエクスポートするオプションも含まれています。

ソース コードをツールボックスに埋め込むか、外部のスクリプト ファイルにリンクすることができます。 ソース コードの場所に関係なく、このタブには、コードの変更に使用できるコード エディターが含まれています。または、[スクリプト エディターで開く] ボタンをクリックし、スクリプト エディターでコードを開きます。 優先するスクリプト エディターは、ジオプロセシング オプションで指定できます。

検証タブ

[検証] タブには、スクリプト ツールの検証コードが表示されます。 検証では、ツールのパラメーターが、スクリプト ツールの値や他のパラメーターに応答し、相互に連携するかをカスタマイズできます。 検証コードは Python で記述されます。

ToolValidator Python コード ブロックによって、スクリプト ツールの外観、動作、およびメッセージを制御できます。 コード エディターから検証コードを直接編集するか、[スクリプト エディターで開く] ボタンをクリックして、ジオプロセシング オプション ダイアログ ボックスで設定できる優先スクリプト エディターで検証コードを開きます。

環境タブ

[環境] タブには、[サポートされている環境] および [サポートされていない環境] という 2 つのリストが表示されます。 これらのリスト間で、環境を追加または削除することができます。 [サポートされている環境] リスト内の環境のみが、スクリプト ツールのダイアログ ボックスの [環境] タブに表示されます。

関連トピック