Hi all,
I am working on a quite simple form in Field Maps and trying to pull EXIF metadata of attached photographs into the form. This would be especially helpful for the date/time of the photographs. I am now using the simple 'Now()' expression, but this would of course return the current time (when one's using the form).
My current expression (see below) returns the correct value when I am designing the form. However, when I am using the Field Maps app on my phone and take a new photograph, an error is returned. Any ideas on what I am doing wrong?
var features = [];
var att = attachments($feature, {metadata: True});
if (count(att) > 0) {
for (var a in att) {
push(features, att[a].exifInfo)
}}
//return features;
return features[0][0]['tags'][6]['value'];
Hi @RemcoBr,
I'm not sure if this is possible in Field Maps but you can use a Survey123 Form for capturing points, data, pictures and extracting the exif data there and show the points with attachments and exif data as "normal" attributes in Field Maps.
@RemcoBr Did you ever make progress on this? I have a dataset that needs to be accessed from both Survey123 and Field Maps. I am struggling to get the Exif calculations to fire while collecting in Field Maps. My Arcade works fine when a photo is already attached, but there seem to be issues with pulling it pre-attachment.
Unfortunately, no. I’m still facing the same issue. It works fine for photos that are already attached (so in post-processing), but I haven’t been able to get it to work before uploading the photo.
Just experimented with this also. It seems that attachments() calls the attachment featureset from the cloud, so current changes are not yet applied and therefore won't appear. But on top of that, even for photos that are already in the cloud, the metadata doesn't contain an exifInfo in my case. It works fine in the popup of the web map, but not in Field Maps. There,
att[a].exifInfo
evaluates to null.