Разрешить вложения (Управление данными)
Резюме
Включает вложения класса пространственных объектов базы геоданных или таблицы. Создает необходимые вложения для класса отношений и вложения таблицы, которые внутренне хранят файлы вложений.
Использование
Вложения необходимо сначала включить при помощи этого инструмента перед тем, как добавлять их при помощи инструмента Добавить вложения (Add Attachments).
-
Если для класса пространственных объектов базы геоданных или таблицы вложения уже включены, вернется предупреждение и работать ничего не будет.
Синтаксис
Параметр | Объяснение | Тип данных |
in_dataset |
Таблица базы геоданных или класс пространственных объектов, для которых включаются вложения. Входной набор данных должен быть в базе геоданных версии 10 или более поздней версии. | Table View |
Пример кода
Следующий фрагмент кода демонстрирует способ использования инструмента Разрешить вложения (EnableAttachments) в окне Python.
import arcpy
arcpy.EnableAttachments_management(r"C:\Data\City.gdb\Parcels")
Следующий скрипт демонстрирует, как использовать инструмент Разрешить вложения (EnableAttachments) в автономном скрипте.
"""
Example: we have a folder of digital photographs of vacant homes; the photos
are named according to the ParcelID of the house in the picture. Let's add
these photos to a parcel feature class as attachments.
"""
import csv
import arcpy
import os
import sys
input = r"C:\Data\City.gdb\Parcels"
inputField = "ParcelID"
matchTable = r"C:\Data\matchtable.csv"
matchField = "ParcelID"
pathField = "Picture"
picFolder = r"C:\Pictures"
try:
# create a new Match Table csv file
writer = csv.writer(open(matchTable, "wb"), delimiter=",")
# write a header row (the table will have two columns: ParcelID and Picture)
writer.writerow([matchField, pathField])
# iterate through each picture in the directory and write a row to the table
for file in os.listdir(picFolder):
if str(file).find(".jpg") > -1:
writer.writerow([str(file).replace(".jpg", ""), file])
del writer
# the input feature class must first be GDB attachments enabled
arcpy.EnableAttachments_management(input)
# use the match table with the Add Attachments tool
arcpy.AddAttachments_management(input, targetField, matchTable, matchField, pathField, picFolder)
except:
print arcpy.GetMessages(2)