日本語
Continue in the app
Be The First To Get Support Updates
Want to know about the latest technical content and software updates?

操作手順: ArcGIS Pro でフィーチャクラスからアタッチメントをバッチ エクスポートする

概要

ArcGIS Pro には、アタッチメントをファイル システムに保存し、フィーチャクラスからアタッチメントをエクスポートする機能があります。詳しくは、「ArcGIS Pro: アタッチメントの保存」をご参照ください。 ただし、この機能では一度に 1 つのフィーチャのアタッチメントしか保存できません。 すべてのフィーチャのアタッチメントを、一度のプロセスでエクスポートできるようなジオプロセシング ツールはありません。

スクリプト ツールを作成し、フィーチャクラスのアタッチメントを一括エクスポートする方法を説明します。

注意: このワークフローを実行するには、Desktop Standard または Desktop Advanced ライセンスが必要です。

手順

ArcGIS Pro のフィーチャクラスからアタッチメントを一括エクスポートするには、フィーチャクラスからアタッチメントを一括エクスポートするためのスクリプト ツールを Python スクリプトで作成します。 必要なパラメーターを指定し、スクリプト ツールを実行します。

注意: 指定したスクリプトには、アタッチメントがフィーチャクラスの入力として有効化されたときに作成された標準のアタッチメント テーブルが必要です。 これは、スクリプトがそのテーブルの DATA、ATT_NAME、および ATTACHMENTID フィールドに依存しているためです。 標準的な命名規則では、テーブル名の末尾に _ATTACH が付加されます。
  1. 次のスクリプトをコピーしてメモ帳に貼り付け、ExportAttachments.py という名前で保存します。
注意: 次に示すスクリプトは、1 つのフィーチャクラスのアタッチメント テーブル全体に繰り返し適用され、アタッチメント (BLOB (Binary Large Object) として保存される) をファイルにコピーします。
import arcpy from arcpy import da import os inTable = arcpy.GetParameterAsText(0) fileLocation = arcpy.GetParameterAsText(1) with da.SearchCursor(inTable, ['DATA', 'ATT_NAME', 'ATTACHMENTID']) as cursor:     for item in cursor:         attachment = item[0]         filenum = "ATT" + str(item[2]) + "_"         filename = filenum + str(item[1])         open(fileLocation + os.sep + filename, 'wb').write(attachment.tobytes())         del item         del filenum         del filename         del attachment
  1. ArcGIS Pro の [カタログ] ウィンドウのツールボックスを右クリックし、[新規][スクリプト] の順にクリックします。
ツールボックスに新しいスクリプト ツールを作成する手順の画像
  1. スクリプト ツールのプロパティ ページで、スクリプト ツールのプロパティを以下のように設定します。
    1. [一般] セクションで、スクリプト ツールの [名前][ラベル] を入力します。 たとえば、[名前] に「ExportAttachments」、[ラベル] に「Export Attachments」を入力します。 ラベルはスクリプト ツールの ([ジオプロセシング] ウィンドウに表示される) 表示名です。
    2. [スクリプト ファイル] フィールド横の [参照] アイコン 参照アイコンの画像 をクリックし、手順 1 で保存したスクリプト ファイルの場所に移動します。 スクリプトを選択して、[OK] をクリックします。
    3. [相対パスでツールを保存] チェックボックスをオンにします。
スクリプト ツールのプロパティ ページの [一般] セクションの画像
  1. [パラメーター] セクションの [ラベル] 列の 1 行目に「Attachments Table」と入力し、[データ タイプ][テーブル] に設定します。 これはスクリプト ツールの最初のパラメーターで、エクスポートするアタッチメントを含むテーブルを定義します。
  2. 2 行目に、[ラベル] 名を「Output Location」とする 2 つ目のパラメーターを追加し、[データ タイプ][フォルダー] に設定します。 このパラメーターは、エクスポートしたアタッチメントのフォルダーを定義します。
スクリプト ツールのプロパティ ページの [パラメーター] セクションの画像
  1. [OK] をクリックします。 新しいスクリプト ツールがツールボックスに追加されます。
作成された [アタッチメントのエクスポート (Export Attachments)] スクリプト ツールの画像
  1. 作成されたスクリプト ツールをダブルクリックして開きます。 次のようにツールのパラメーターを設定し、アタッチメントを一括でエクスポートします。
    1. ツール ダイアログ ボックスの [Attachment Tables] パラメーターで、エクスポートするアタッチメントを含むアタッチメント テーブルを検索します。
    2. [Output Location] パラメーターで、エクスポートしたアタッチメントを保存するフォルダーを選択し、[OK] をクリックします。
    3. [実行] をクリックします。
[アタッチメントのエクスポート (Export Attachments)] ツール ダイアログ ボックスの画像。
アタッチメントが正常に一括エクスポートされ、[Output Location] パラメーターで定義したフォルダーに保存されます。
エクスポートされたアタッチメントのリストの画像

関連情報

更新日時: 7/27/2022

記事 ID: 000017450

ソフトウェア: ArcGIS Pro 3.0, 2.9.3, 2.9.2, 2.9.1, 2.9, 2.8.7, 2.8.6, 2.8.5, 2.8.4, 2.8.3, 2.8.2, 2.8.1, 2.8