Skip To Content

ArcMap でのジオプロセシング サービスの使用

ジオプロセシング サービスには 1 つ以上のタスクが含まれます。タスクはジオプロセシング ツールと同様に、パラメーターを受け取って結果を返します。タスクは、サーバー上で処理を実行して結果を返すルーチンを表すための ArcGIS API for JavaScript で使用される用語です。ジオプロセシング サービスとツールボックス、およびタスクとツールの間に大きな違いはありません。サービスとツールボックス、およびタスクとツールが区別されるのは ArcGIS Server の他のクライアント (Web ブラウザーをはじめとするインターネットベースのソフトウェアなど) においてのみです。

GIS Server サイトへの接続

最初の手順は、ArcGIS Server サイトへの接続です。[カタログ] ウィンドウで次の操作を行います。

  1. [GIS Servers] ノードから GIS Server への公開者接続を作成します。
  2. フォルダーを右クリックしてから [新規作成] > [ArcGIS Server 接続] の順にクリックして、任意のフォルダーに接続を作成します。

ジオプロセシング サービスの URL の取得

ArcGIS Server に接続するときには URL、ユーザー名、およびパスワードが必要です。ジオプロセシング サービスを含むすべてのサービスを ArcMap で使用するには、SOAP URL を使用する必要があります。サービスの URL は次の方法で取得できます。

  • この GIS Server サイトは組織によってホストされているため、URL はユーザーに通知されています。
  • URL を取得します。
  • ArcGIS Online でジオプロセシング サービスを検索して、使用したいタスクを含むサービスを探します。サービスをホストしているサーバーの URL は、次の手順で取得できます。
    • ArcGIS Online のサービスの説明には [ArcGIS Web API REST 接続] というエントリがあり、ここに URL が含まれています。この URL は、REST を使用してサービスに接続する際に使用します。ArcGIS Desktop でサーバーに接続する場合は、SOAP URL が必要です。
    • SOAP URL は、REST URL を基にして取得できます。たとえば、REST URL が http://sampleserver.esri.com/arcgis/rest/services/SupplyDemandService/gpserver の場合、サーバー接続を作成するための対応する SOAP URL は http://sampleserver.esri.com/arcgis/services になります (rest、サービスの名前、および gpserver は SOAP URL から削除されます)。
    • SOAP URL を使用して、サーバーへのユーザー接続を作成します。接続を作成したら、カタログ ツリーでサーバー カタログを参照し、ジオプロセシング サービスとタスクを検索します。

ジオプロセシング タスクの実行

ジオプロセシング サービスのタスクは、他のツールと同様に、ツール ダイアログ ボックス、ModelBuilder、またはスクリプトで実行します。唯一の違いは、ツールをフォアグラウンドで実行する場合です。一部のタスクはサーバーから結果が返されるのを待機しますが、待機しないタスクもあります。これらのタスクはサーバーにタスクを送信し、必要に応じてサーバーに結果を問い合わせます。サーバーに送信されたタスクのステータスの確認には [結果] ウィンドウを使用します。詳細については、後述の「同期タスクと非同期タスク」をご参照ください。

タスクの結果の操作

ジオプロセシング サービスの結果は、[結果] ウィンドウの [現在のセッション] に追加されます。結果の出力データ タイプがファイルまたはラスター データセットである場合、出力はローカルのテンポラリ ディレクトリに保存されます。その他のデータ タイプ (フィーチャクラスなど) の場合、結果は現在のセッションに書き込まれ、出力データセットの名前とステータスが表示されます。次に示す 5 つのステータスの値があります。

<なし>

ツールはまだサーバーで実行中であり、出力が書き込まれていません。または、タスクが正常に実行されなかったため、結果が返されていません。この状態は、非同期ツールのみに適用されます。詳細については、後述の「同期タスクと非同期タスク」をご参照ください。

<ローカルのテンポラリ フォルダー内のデータ>

ツールの実行は完了しており、出力データはコンピューターのメモリまたはシステムのテンポラリ ディレクトリのどちらかにあります。データを参照する ArcMap レイヤーがある限り、そのデータは削除されません。データを保存したい場合は、このテンポラリ フォルダーから既知の場所にデータをコピーします。これを行うには、[コピー (Copy)] ツールを使用し、データセットを結果からツールの入力フィーチャ パラメーター内にドラッグします。出力を右クリックして [ロケーションをコピー] をクリックすることもできます。これにより、フィーチャクラスのパスがクリップボードにコピーされるので、[コピー (Copy)] ツールの入力フィーチャのパラメーターのようなテキスト指定が可能な任意の場所に貼り付けることができます。

<サーバー上のデータ>

データはサーバー上にあり、データを ArcMapArcGlobe、または ArcScene に描画する結果のマップ サービスがあります。この結果のマップは、サーバーでツールの実行が終了すると、自動的に [コンテンツ] ウィンドウに追加されます。この結果のマップ サービスを [コンテンツ] ウィンドウに追加する必要がある場合は、結果ツールを右クリックして [サーバー レイヤーの追加] をクリックします。

結果ツールを右クリックして [データの取得] をクリックする方法もあります。この場合は、データがサーバーからコンピューターにコピーされます。コピーした後、状態は、<ローカルのテンポラリ フォルダー内のデータ>、<転送制限外のデータ>、<使用できないデータ> のいずれかになります。

<転送制限外のデータ>

転送するフィーチャの最大数を超過したため、[データの取得] アクションですべてのデータをサーバーからコンピューターに転送することができませんでした。大きなデータセットをコピーすると、他の GIS サービスを実行するサーバーの能力が低下し、ネットワークが停滞します。そのため、サービスの作成者は、サーバーからクライアント コンピューターにコピーできるフィーチャの最大数を指定しています。この制限を超過するデータをコピーする必要がある場合は、サービスの作成者またはサーバー管理者に連絡して、データを取得するための他の方法を検討する必要があります。

<利用不可のデータ>

[データの取得] アクションでサーバー上にデータが見つかりませんでした。最も可能性が高い原因は、タスクの結果が古いものだとサーバー管理者が判断し、サーバー上の領域を解放するためにデータを削除してしまった場合です。

環境設定の無視

ジオプロセシング サービスは、実行に影響する環境設定をサーバーで明示的に設定します。現在のセッション内で設定した ArcGIS Desktop のローカル環境設定は、サービスが使用する環境設定に影響しません。

サーバー ツール実行完了前のアプリケーションの終了

非同期ツール (次のセクションを参照) を指定した後は、操作中のアプリケーションを終了することができます。たとえば、ArcMap の操作中に、実行を開始し、マップ ドキュメントを保存し、ArcMap を終了することができます。後でこのドキュメントを開くと、ArcMap からサーバーにクエリが送信され、結果のステータスが確認され、[結果] ウィンドウの結果が更新されます。実行を開始してから ArcMap (または ArcGlobeArcScene) を終了するこの方法を使用する場合は、結果を保存して、後で確認するために、必ずマップ ドキュメントを保存してください。

同期タスクと非同期タスク

ジオプロセシング サービスとそのタスクは、同期と非同期のどちらかになります。同期とは、タスクがサーバー上で実行されている間はコンピューターが待機状態になることを意味します。非同期とは、ツールの実行が完了するのをコンピューターが待機する必要はなく、他のタスクを処理できることを意味します。

タスクを同期または非同期のどちらで実行するかを決定するのはサービスの公開者です。同期ツールとして公開するタスクは、迅速に実行され、出力データセットが小さいものだけにする必要があります。

サーバー ツールが同期であるか、非同期であるかを判断するには、次のいずれかを実行します。

  • ArcGIS Server への管理者接続を作成する場合は、[カタログ] ウィンドウでサーバーを参照し、ジオプロセシング サービスを右クリックしてから [サービス プロパティ] をクリックします。ツールの実行タイプが [パラメーター] タブに表示されます。
  • ツールを実行し、書き出されるメッセージを確認します。非同期サービスを実行した場合、最初に書き出されるメッセージは [サーバー メッセージ] です。このタイプのジオプロセシング サービスは、ArcMap で常にバックグラウンド処理として実行されます。同期ツールの場合は、最初に「実行中」メッセージが表示されます。次に示す 2 つの結果は、非同期と同期で実行されたものです (ArcGIS Server 管理者による設定)。
非同期/同期実行

ArcMap で非同期ツールを実行し、ツール結果のマップへの追加を有効にしている場合、レイヤーはマップに追加されますが、表示されません (オンの状態)。これは、いつツールの実行が終了し、描画する出力が作成されるのかが ArcMap で認識されないためです。

非同期ツールの実行が終了しても、自動的には通知されません。非同期ツールの進行状況は、[結果] ウィンドウで確認することができます。ツールの実行中は、結果の隣に砂時計が表示されます。結果を右クリックして [キャンセル] をクリックすると、実行をキャンセルすることができます。タスクが完了すると、[完了] メッセージが表示され、結果のタスク名の横にツールのアイコンが表示されます。