Étiquette | Explication | Type de données |
Jeu de données en entrée | Jeu de données contenant des enregistrements qui auront des fichiers joints. | Table View |
Dossier en entrée | Dossier qui contient les fichiers à joindre. | Folder |
Table d'appariement en sortie | Table d’appariement en sortie avec les champs MATCHID et FILENAME. | Table |
Champ de clé | Champ à partir duquel les valeurs sont utilisées pour apparier les noms des fichiers provenant du dossier en entrée. Le comportement d’appariement compare les valeurs du champ à chaque nom de fichier, quelle que soit l’extension de fichier. Cela permet l’appariement de plusieurs fichiers portant différentes extensions de fichier avec un seul enregistrement dans le jeu de données en entrée. Par exemple, une valeur de champ lot5986 correspond à un fichier nommé lot5986.jpg si la valeur du paramètre Modèle d’appariement est Exact. | Field |
Filtre de données en entrée (Facultatif) | Filtre de données permettant de limiter les fichiers pris en compte pour l’appariement. Les caractères génériques (*) contribuent à augmenter la flexibilité des options de filtrage. Il est également possible de séparer plusieurs fichiers par des points-virgule. Par exemple, vous avez un répertoire en entrée avec divers types de fichiers. Pour réduire les appariements possibles aux seuls fichiers .jpg, utilisez la valeur *.jpg. Pour réduire les appariements possibles aux fichiers .pdf et .doc, utilisez *.pdf; *.doc. Pour réduire les appariements possibles aux noms de fichiers qui contiennent le texte arc, utilisez la valeur *arc*. | String |
Chemin relatif de stockage (Facultatif) | Spécifie si le champ de table d’appariement en sortie FILENAME contient des chemins complets ou seulement les noms de fichiers.
| Boolean |
Modèle d’appariement (Facultatif) | Spécifie le type de modèle d’appariement à utiliser pour apparier les noms de fichiers avec la valeur du paramètre Champ de clé spécifiée.
| String |
Synthèse
Crée une table d’appariement utilisable avec les outils Ajouter des pièces jointes et Supprimer les pièces jointes.
En savoir plus sur l’utilisation des outils de géotraitement Pièces jointes
Utilisation
Cet outil évalue chaque ligne du jeu de données cible en entrée et compare les valeurs du paramètre Champ de clé aux noms des fichiers multimédias figurant dans la valeur du paramètre Dossier en entrée. Pour chaque correspondance trouvée, un enregistrement est créé dans la table en sortie qui contient la valeur ID d’objet du jeu de données en entrée et le nom des fichiers appariés (ou facultativement le chemin d’accès complet aux fichiers). Utilisé avec les outils Ajouter des pièces jointes et Supprimer des pièces jointes, le champ MATCHID sert de champ clé pour lier les fichiers du disque à des enregistrements du jeu de données en entrée.
Si la valeur du paramètre Table d’appariement en sortie est un dossier, la sortie peut être créée comme une table dBASE en spécifiant un nom avec l’extension.dbf. Si l'emplacement en sortie est une géodatabase, la table de correspondances est une table de géodatabase (ne pas spécifier d'extension).
Paramètres
arcpy.management.GenerateAttachmentMatchTable(in_dataset, in_folder, out_match_table, in_key_field, {in_file_filter}, {in_use_relative_paths}, {match_pattern})
Nom | Explication | Type de données |
in_dataset | Jeu de données contenant des enregistrements qui auront des fichiers joints. | Table View |
in_folder | Dossier qui contient les fichiers à joindre. | Folder |
out_match_table | Table d’appariement en sortie avec les champs MATCHID et FILENAME. | Table |
in_key_field | Champ à partir duquel les valeurs sont utilisées pour apparier les noms des fichiers provenant du dossier en entrée. Le comportement d’appariement compare les valeurs du champ à chaque nom de fichier, quelle que soit l’extension de fichier. Cela permet l’appariement de plusieurs fichiers portant différentes extensions de fichier avec un seul enregistrement dans le jeu de données en entrée. Par exemple, une valeur de champ lot5986 correspond à un fichier nommé lot5986.jpg si la valeur du paramètre match_pattern est EXACT. | Field |
in_file_filter (Facultatif) | Filtre de données permettant de limiter les fichiers pris en compte pour l’appariement. Les caractères génériques (*) contribuent à augmenter la flexibilité des options de filtrage. Il est également possible de séparer plusieurs fichiers par des points-virgule. Par exemple, vous avez un répertoire en entrée avec divers types de fichiers. Pour réduire les appariements possibles aux seuls fichiers .jpg, utilisez la valeur *.jpg. Pour réduire les appariements possibles aux fichiers .pdf et .doc, utilisez *.pdf; *.doc. Pour réduire les appariements possibles aux noms de fichiers qui contiennent le texte arc, utilisez la valeur *arc*. | String |
in_use_relative_paths (Facultatif) | Spécifie si le champ de table d’appariement en sortie FILENAME contient des chemins complets ou seulement les noms de fichiers.
| Boolean |
match_pattern (Facultatif) | Spécifie le type de modèle d’appariement à utiliser pour apparier les noms de fichiers avec la valeur du paramètre key_field spécifiée.
| String |
Exemple de code
L’extrait de code suivant illustre l’utilisation de la fonction GenerateAttachmentMatchTable dans la fenêtre Python.
import arcpy
arcpy.management.GenerateAttachmentMatchTable(
"C:/data/parcels.gdb/parcels",
"C:/attachment_folder",
"C:/data/temp.gdb/matchtable",
"AttachmentKeyField",
"*.jpg; *.pdf",
"ABSOLUTE",
"EXACT")
Le script autonome suivant décrit l’utilisation de la fonction GenerateAttachmentMatchTable pour créer une table d’appariement contenant les correspondances des fichiers .jpg et .pdf.
# Name: GenerateAttachmentMatchTable_Example.py
# Description: Create 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
import os
# Set local variables.
rootFolder = 'c:/work/'
for folder in os.walk(rootFolder):
# Exclude file geodatabases from the folder list.
if folder[0].find('.gdb') == -1:
arcpy.management.GenerateAttachmentMatchTable(
"C:/data/parcels.gdb/parcels", folder[0],
"C:/data/temp.gdb/matchtable", "AttachmentKeyField",
"*property*.jpg", "RELATIVE", "EXACT")
Environnements
Vous avez un commentaire à formuler concernant cette rubrique ?