アタッチメントのエクスポート (Export Attachments) (データ管理)

サマリー

ジオデータベース フィーチャクラスまたはテーブルのレコードから指定されたフォルダーにファイル アタッチメントをエクスポートします。 指定された属性列の属性値に基づいてサブディレクトリにアタッチメントをエクスポートすることもできます。 エクスポートされたアタッチメントの名前を変更するには、1 つ以上のフィールド属性値を使用します。

アタッチメント ジオプロセシング ツールの操作の詳細

使用法

  • このツールは選択を使用します。 レコードを選択しなかった場合、すべてのアタッチメントがエクスポートされます。

  • エクスポートされたアタッチメント ファイルのファイル タイプは、ジオデータベースに追加したときと同じになります。 たとえば、アタッチメントが .pdf ファイルの場合、エクスポートされたファイルは .pdf になります。

  • [サブディレクトリ フィールド] パラメーターの値を指定することで、レコードごとにサブディレクトリにアタッチメントをエクスポートできます。 フィールドの値を使用して、サブディレクトリの名前が付けられます。 たとえば、属性テーブルに 3 つの行があり、選択したフィールドの値が、ATL、TPA、SLC の場合、これらの名前を持つ 3 つのサブディレクトリが作成されます。 これらの値ごとにすべてのアタッチメントがそれぞれのサブディレクトリにダウンロードされます。

  • エクスポートされたファイルで名前が競合しないようにするために、必要に応じてツールがファイル名に増分数を追加します。 フィールド値が Null の場合、None という単語がファイル名に使用されます。

  • アタッチメントをエクスポートすると、出力サブディレクトリとファイル名でフィールド値の次の文字が置き換えられます。

    フィールド値の文字置換後の文字

    スラッシュ (/)

    ハイフン (-)

    二重バックスラッシュ (\\)

    ハイフン (-)

    パイプまたは縦線 (|)

    ハイフン (-)

    アスタリスク (*)

    アンダースコア (_)

    より小さい (<)

    アンダースコア (_)

    より大きい (>)

    アンダースコア (_)

    疑問符 (?)

    アンダースコア (_)

    コロン (:)

    カンマに続くスペース (, )

パラメーター

ラベル説明データ タイプ
入力データセット

アタッチメントのエクスポート元となるジオデータベース テーブルまたはフィーチャクラス。

入力はバージョン 10.0 以降のジオデータベースに格納される必要があります。また、テーブルでアタッチメントが有効になっている必要もあります。

Table View
出力場所

アタッチメント ファイルのエクスポート先となるフォルダー。

Folder
サブディレクトリ フィールド
(オプション)

サブディレクトリ名の作成に使用される [入力データセット] パラメーター値のフィールド。

Field
名前の形式
(オプション)

エクスポートされたアタッチメントの名前の指定に使用する形式を指定します。

  • 元のファイル名の使用出力ファイル名は、ジオデータベースに格納されている元のファイル名を使用します。
  • フィールド値のみを使用出力ファイル名は、[名前フィールド] パラメーター値のフィールド値を使用します。 複数の値はアンダースコアで連結されます。
  • フィールド値を接頭辞として追加出力ファイル名は、[名前フィールド] パラメーター値のフィールド値からの接頭辞が付いた元のファイル名を使用します。
  • フィールド値を接尾辞として追加出力ファイル名は、[名前フィールド] パラメーター値のフィールド値からの接尾辞が付いた元のファイル名を使用します。 複数の値はアンダースコアで連結されます。
String
名前フィールド
(オプション)

エクスポートされたアタッチメントの名前の変更に使用される [入力データセット] パラメーター値のフィールド名。 複数のフィールドを指定した場合、出力ファイルは、指定された順番でアンダースコアで連結されたフィールド値を使用します。

たとえば、2 つのフィールド名が指定され、[名前の形式] パラメーターが [フィールド値のみを使用] に設定されている場合、最初のレコードのフィールド値は MainStreet、アタッチメントは .jpg ファイル、エクスポートされたファイルには Main_Street.jpg という名前が付けられます。

このパラメーターは、[名前の形式] パラメーターが [フィールド値のみを使用][フィールド値を接頭辞として追加]、または [フィールド値を接尾辞として追加] に設定されている場合にアクティブになります。

Field

派生した出力

ラベル説明データ タイプ
出力ディレクトリ

更新されたフォルダー。

Folder

arcpy.management.ExportAttachments(in_dataset, out_location, {subdirectory_field}, {name_format}, {name_fields})
名前説明データ タイプ
in_dataset

アタッチメントのエクスポート元となるジオデータベース テーブルまたはフィーチャクラス。

入力はバージョン 10.0 以降のジオデータベースに格納される必要があります。また、テーブルでアタッチメントが有効になっている必要もあります。

Table View
out_location

アタッチメント ファイルのエクスポート先となるフォルダー。

Folder
subdirectory_field
(オプション)

サブディレクトリ名の作成に使用される in_dataset パラメーター値のフィールド。

Field
name_format
(オプション)

エクスポートされたアタッチメントの名前の指定に使用する形式を指定します。

  • ORIGINAL出力ファイル名は、ジオデータベースに格納されている元のファイル名を使用します。
  • REPLACE出力ファイル名は、name_fields パラメーター値のフィールド値を使用します。
  • PREFIX出力ファイル名は、name_fields パラメーター値のフィールド値からの接頭辞が付いた元のファイル名を使用します。
  • SUFFIX出力ファイル名は、name_fields パラメーター値のフィールド値からの接尾辞が付いた元のファイル名を使用します。
String
name_fields
[name_fields,...]
(オプション)

エクスポートされたアタッチメントの名前の変更に使用される in_dataset パラメーター値のフィールド。 複数のフィールドを指定した場合、出力ファイルは、指定された順番でアンダースコアで連結されたフィールド値を使用します。

たとえば、2 つのフィールド名が指定され、name_format パラメーターが REPLACE に設定されている場合、最初のレコードのフィールド値は MainStreet、アタッチメントは .jpg ファイル、エクスポートされたファイルには Main_Street.jpg という名前が付けられます。

このパラメーターは、name_format パラメーターが REPLACEPREFIX、または SUFFIX に設定されている場合にアクティブになります。

Field

派生した出力

名前説明データ タイプ
out_dirs

更新されたフォルダー。

Folder

コードのサンプル

ExportAttachments の例 1 (Python ウィンドウ)

次のコード スニペットは、ExportAttachments ウィンドウで Python 関数を使用する方法を示しています。

import arcpy
arcpy.management.ExportAttachments(r"C:\Data\National.gdb\Airports",
                                   r"C:\OutputFolder", 'CODE', 'REPLACE', ['NAME', 'CODE'])
ExportAttachments の例 2 (スタンドアロン スクリプト)

データ ソースに対して選択を実行した後に、ExportAttachments 関数を使用して特定のフィーチャのアタッチメントをエクスポートします。

import arcpy

# Import system variables
import arcpy

# Set the workspace
arcpy.env.workspace = r"C:\National.gdb"

# Set local variables
in_dataset = "Airports"
out_location = r"C:\Output_Images"
subdir_field = 'Code'
output_names = 'REPLACE'
name_fields = ['NAME', 'CODE']

# Select the Salt Lake City Airport and download all attachments to a subdirectory named SLC.
layerSelection = arcpy.management.SelectLayerByAttribute(in_dataset, 'NEW_SELECTION',
                                                         "Name = 'Salt Lake City'")

# Export the attachments with the layer selection set and renamed using field values.
arcpy.management.ExportAttachments(layerSelection, out_location, subdir_field,
                                   output_names, name_fields)

環境

このツールは、ジオプロセシング環境を使用しません。

関連トピック