生成附件匹配表 (Data Management)

许可等级:BasicStandardAdvanced

摘要

此 ArcGIS 地理处理工具用于创建匹配表,以与添加附件移除附件工具配合使用。

了解有关使用“附件”地理处理工具的详细信息

用法

语法

GenerateAttachmentMatchTable_management (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

将生成的包含以下两列的表:MATCHID 和 FILENAME。

Table
in_key_field

此字段中的值将与输入文件夹中的文件名匹配。匹配行为将忽略文件扩展名,从而使文件扩展名不同的多个文件与输入数据集中的一条记录相匹配。

例如,如果输入“关键字段”值为 lot5986,则磁盘上名为 lot5986.jpg 的文件将与此条记录匹配。

Field
in_file_filter
(可选)

此参数用于限制工具认为匹配的文件。如果文件名不符合文件过滤器参数中的条件,则不会被处理,因此文件也不会显示在输出匹配表中。可在此参数中使用通配符 (*) 来获得更灵活的过滤选项。也可以使用多个以分号分隔的过滤器。

以包含以下文件的目录为例:parcel.tifparcel.docparcel.jpghouses.jpgreport.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")

环境

此工具不使用任何地理处理环境

相关主题

许可信息

ArcGIS for Desktop Basic:否
ArcGIS for Desktop Standard:是
ArcGIS for Desktop Advanced:是
9/15/2013