Создать таблицу соответствия вложений (Управление данными)

Уровень лицензии:BasicStandardAdvanced

Резюме

Инструмент геообработки ArcGIS, который создает таблицу сопоставления для использования совместно с инструментами Добавить вложения (Add Attachments) и Удалить вложения (Remove Attachment).

Более подробно о работе с инструментами геообработки вложений

Использование

Синтаксис

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.tif, parcel.doc, parcel.jpg, houses.jpg и report.pdf.

Чтобы ограничить количество возможных совпадений в этом списке только файлами с расширением JPG, используйте *.jpg.

Чтобы ограничить количество возможных совпадений в этом списке только файлами с расширениями PDF и DOC, используйте *.pdf; *.doc.

Чтобы ограничить количество возможных совпадений в этом списке только файлами, которые начинаются с участка, используйте parcel*.

Чтобы ограничить количество возможных совпадений в этом списке только файлами, которые содержат текстовую дугу, используйте *arc*.

String
in_use_relative_paths
(дополнительно)

Устанавливает, содержит ли поле FILENAME выходной таблицы сопоставления полный путь к набору данных или только имя файла.

  • ОтносительныеПоле FILENAME выходной таблицы содержит относительный путь. Это значение используется по умолчанию.
  • Абсолютные.Поле FILENAME выходной таблицы содержит полный путь к данным.
Boolean

Пример кода

Создать таблицу соответствия вложений (Generate Attachment Match Table). Пример (окно Python)

Следующий фрагмент кода демонстрирует способ использования инструмента Создать таблицу соответствия вложений (Generate Attachment Match Table) в окне Python.

import arcpy
arcpy.GenerateAttachmentMatchTable_management("C:/data/parcels.gdb/parcels",
                                              "C:/attachment_folder",
                                              "C:/data/temp.gdb/matchtable",
                                              "AttachmentKeyField",
                                              "*.jpg; *.pdf",
                                              "ABSOLUTE")
Создать таблицу соответствия вложений (Generate Attachment Match Table). Пример (автономный скрипт Python)

Следующий отдельный скрипт демонстрирует использование инструмента Создать таблицу соответствия вложений (Generate Attachment Match Table) для создания таблицы сопоставления, которая содержит совпадения только для файлов с расширением 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/10/2013