Adding attachments to a FGDB in ArcMap for use in AGOL:
Is it me, or is this unnecessarily confused, awkward and complicated?!
I am endeavouring to add 1000s of jpgs & PDFs to various points and polygons in ArcMap, but it appears the tools used for this sort of help, but in the end, one has to create fields and babysit the process all the way.
Please jump in if I am doing something wrong here:
- Create an FGDB, import shp data that will have attachments associated to various Feature Datasets
- Enable attachments for the above feature class. Oddly, if you have not done this, you can proceed through at least part of the attachment process before it fails and tells you attachments cannot be applied, meaning you need to start again. Enabling should be automatic??!!
- Generate Attachments Match Table. This is a flawed tool: It searches for files in your specified folder that both wholly match AND begin with the Key Field value. For example, Key Field value "Photo-100" will 'match' files called "Photo-100.jpg", "Photo-100A.jpg", "Photo-100B.jpg", "Photo-100C.jpg", "Photo-100A.PDF" etc. The result is more matches than you have files to attach!
- In the above case, you need to manually create your own match table with the proper field names (MATCHID & FILENAME, may not be case sensitive) and populate with the values in order for it to attach the correct files at the end of the process.
- The Match Table(s) cannot reside in the Feature Dataset 'folder' in your FGDB, but you can 'force' them to at least reside in the FGDB itself, in a bid to keep things organised. Otherwise they simply go to your default location for losing. I have noticed that if you specify the Match Table location to be within your FGDB, it creates an OBJECTID field.
- Add Attachments. The tool's Input Dataset field is badly worded, beginning by stating the GDB/FC you're adding attachments to, only to contradict this by saying they are not directly added. A suggestion: "Geodatabase table or feature class, to which your attachments will be associated via a related attachment table that maintains linkage to the input dataset."
- Match Join Field: should I use the FILENAME field or MATCHID here? Not sure if this is a safe option as what guarantee is there that the correct record will go with the Input Join field? It appears that FILENAME can only be used in the Match Table if the full filename (including filename extension) is present in an Input Dataset field.
- Match Path Field: why is this not already 'taken care of' by the Match Table, seeing the folder was browsed as part of that process...? (though I can see the table could be used for multiple folder locations - hence the relative path option? The Match Path Field is not even present in the Match Table. It seems it can only be used in conjunction with the 'optional' Working Folder - so it's hardly optional....
- The resultant ATTACH table is created in the 'root' of the FGDB, again not in the Feature Dataset folder - a shame.
- Having written this process, it seems the key is understanding the Match Table - this is all important to successfully attaching data, to the right Feature Dataset record. It seems the Feature Dataset benefits from having a field specifying the attachment filename as it simplfies the subsequent Match Table and Add Attachments function.
Happy for feedback!
Thanks for reading