アタッチメント照合テーブルの作成 (Generate Attachment Match Table) (データ管理)

使用法

  • このツールは、入力ターゲット データセットの各行を調査して、このデータセットの [キー フィールド][入力フォルダー] にあるファイルの名前と比較します。一致が発生するごとに、[入力データセット] の ObjectID 値および一致したファイルの名前 (または、ファイルの絶対パス) を含むレコードが、出力テーブルに作成されます。[アタッチメントの追加 (Add Attachments)] および [アタッチメントの削除 (Remove Attachments)] ツールで使用される場合は、MATCHID フィールドがキー フィールドとして使用され、ディスク上のファイルを入力データセットのレコードにリンクします。

  • 出力照合テーブルの場所がフォルダーの場合、出力は、拡張子 *.dbf 付きの名前を指定して dBASE テーブルとして作成するか、拡張子の付かない名前を指定して INFO テーブルとして作成することができます。出力場所がジオデータベースの場合、照合テーブルはジオデータベース テーブルになります (拡張子を指定しないでください)。

パラメーター

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

ファイルがアタッチされるレコードを含む入力データセット。

Table View
入力フォルダー

アタッチするファイルを含むフォルダー。

Folder
出力照合テーブル

生成されるテーブル。MATCHIDFILENAME の 2 つの列を含みます。

Table
キー フィールド

このフィールドの値が入力フォルダーのファイルの名前と照合されます。照合ではファイルの拡張子は無視されます。したがって、入力データセットの 1 つのレコードに対して、拡張子が異なる複数のファイルを照合できます。

たとえば、入力の [キー フィールド] の値が「lot5986」である場合は、ディスク上の lot5986.jpg というファイルがこのレコードに一致します。

Field
入力データ フィルター
(オプション)

このパラメーターは、照合を行うファイルを制限するために使用します。ファイル名がファイル フィルター パラメーターの条件を満たしていない場合、そのファイルは処理されず、作成される照合テーブルには出力されません。このパラメーターにワイルドカード (*) を使用すると、より柔軟なフィルター オプションを指定できます。複数のフィルターをセミコロンで区切って使用することもできます。

たとえば、あるディレクトリに parcel.tifparcel.docparcel.jpghouses.jpg、および report.pdf ファイルが含まれている場合を考えます。

このリストで照合の対象を *.jpg ファイルに制限するには、「*.jpg」を使用します。

このリストで照合の対象を *.pdf および *.doc ファイルに制限するには、「*.pdf; *.doc」を使用します。

このリストで照合の対象を名前が parcel で始まるファイルに制限するには、「parcel*」を使用します。

このリストで照合の対象を名前に arc を含むファイルに制限するには、「*arc*」を使用します。

String
相対パスで保存
(オプション)

出力照合テーブルの FILENAME フィールドに、データセットの絶対パスを含めるか、ファイル名だけを含めるかを決定します。

  • オン - 出力の FILENAME フィールドには相対パスが含まれます。これがデフォルトです。
  • オフ - 出力の FILENAME フィールドにはデータの絶対パスが含まれます。

Boolean

arcpy.management.GenerateAttachmentMatchTable(in_dataset, in_folder, out_match_table, in_key_field, {in_file_filter}, {in_use_relative_paths})
名前説明データ タイプ
in_dataset

ファイルがアタッチされるレコードを含む入力データセット。

Table View
in_folder

アタッチするファイルを含むフォルダー。

Folder
out_match_table

生成されるテーブル。MATCHIDFILENAME の 2 つの列を含みます。

Table
in_key_field

このフィールドの値が入力フォルダーのファイルの名前と照合されます。照合ではファイルの拡張子は無視されます。したがって、入力データセットの 1 つのレコードに対して、拡張子が異なる複数のファイルを照合できます。

たとえば、入力の [キー フィールド] の値が「lot5986」である場合は、ディスク上の lot5986.jpg というファイルがこのレコードに一致します。

Field
in_file_filter
(オプション)

このパラメーターは、照合を行うファイルを制限するために使用します。ファイル名がファイル フィルター パラメーターの条件を満たしていない場合、そのファイルは処理されず、作成される照合テーブルには出力されません。このパラメーターにワイルドカード (*) を使用すると、より柔軟なフィルター オプションを指定できます。複数のフィルターをセミコロンで区切って使用することもできます。

たとえば、あるディレクトリに parcel.tifparcel.docparcel.jpghouses.jpg、および report.pdf ファイルが含まれている場合を考えます。

このリストで照合の対象を *.jpg ファイルに制限するには、「*.jpg」を使用します。

このリストで照合の対象を *.pdf および *.doc ファイルに制限するには、「*.pdf; *.doc」を使用します。

このリストで照合の対象を名前が parcel で始まるファイルに制限するには、「parcel*」を使用します。

このリストで照合の対象を名前に arc を含むファイルに制限するには、「*arc*」を使用します。

String
in_use_relative_paths
(オプション)

出力照合テーブルの FILENAME フィールドに、データセットの絶対パスを含めるか、ファイル名だけを含めるかを決定します。

  • RELATIVE出力の FILENAME フィールドには相対パスが含まれます。これがデフォルトです。
  • ABSOLUTE出力の FILENAME フィールドにはデータの絶対パスが含まれます。
Boolean

コードのサンプル

GenerateAttachmentMatchTable (アタッチメント照合テーブルの作成) の例 (Python ウィンドウ)

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

import arcpy
arcpy.GenerateAttachmentMatchTable_management("C:/data/parcels.gdb/parcels",
                                              "C:/attachment_folder",
                                              "C:/data/temp.gdb/matchtable",
                                              "AttachmentKeyField",
                                              "*.jpg; *.pdf",
                                              "ABSOLUTE")
GenerateAttachmentMatchTable (アタッチメント照合テーブルの作成) の例 (スタンドアロン Python スクリプト)

次のスタンドアロン スクリプトは、GenerateAttachmentMatchTable ツールを使用して、JPG ファイルと PDF ファイルの一致のみを含む照合テーブルを作成する方法を示しています。

# Name: GenerateAttachmentMatchTable_Example.py
# Description: Creates an attachment match table for all files that contain the string
#             'property' and are of type 'jpg' while looping through multiple folders.

# Import system modules
import arcpy, os

# Set local variables.
rootFolder = 'c:/work/'

for folder in os.walk(rootFolder):
    if folder[0].find('.gdb') == -1: #exclude file geodatabases from the folder list.
        arcpy.GenerateAttachmentMatchTable_management("C:/data/parcels.gdb/parcels",
                                                      folder[0],
                                                      "C:/data/temp.gdb/matchtable",
                                                      "AttachmentKeyField",
                                                      "*property*.jpg",
                                                      "RELATIVE")

環境

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

ライセンス情報

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

関連トピック