Activer les pièces jointes (Gestion des données)
Récapitulatif
Active des pièces jointes sur une classe d'entités de géodatabase ou une table. Crée la classe de relations de pièces jointes nécessaire et table de pièces jointes qui stockeront les fichiers de pièce jointe en interne.
Utilisation
Les pièces jointes doivent être activées à l'aide de cet outil avant d'être ajoutées à l'aide de l'outil Ajouter des pièces jointes.
-
Si la classe d'entités de géodatabase ou la table a déjà des pièces jointes activées, un message d'avertissement est émis et aucun traitement n'a lieu.
Syntaxe
Paramètre | Explication | Type de données |
in_dataset |
Table ou classe d'entités de géodatabase pour laquelle les pièces jointes sont activées. L'entrée doit se trouver dans une géodatabase version 10 ou ultérieure. | Table View |
Exemple de code
L'extrait de code suivant illustre l'utilisation de l'outil EnableAttachments dans la fenêtre Python.
import arcpy
arcpy.EnableAttachments_management(r"C:\Data\City.gdb\Parcels")
Le script suivant illustre l'utilisation de l'outil EnableAttachments dans un script autonome.
"""
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)