Select to view content in your preferred language

Feature GlobalID not passed to related table in Survey 123

3528
8
Jump to solution
05-20-2020 01:10 PM
GeorgeHilton__GISP
Occasional Contributor

I am trying to use open Survey 123 from Collector in order to update a related table in a feature service.  I have been following the steps in this article:  How To: Populate a related table from a Survey123 for ArcGIS feature service for Collector for ArcGI... 

I am able to open Survey 123 from ArcGIS Collector and add a record in the related table.  The problem I'm having is that the record added to the related table does not populate the GUID field in the related table (see image below)

This is an image of the XLSX sheet in Survey 123 showing the type, name, label and field type for the GUID field in the related table

This is the URL passed to the popup in Collector to open Survey 123 from Collector: 

arcgis-survey123://?itemID=9c24cd21569440f8b442d412781144fe&field:ParentGlobalID=[HYDGUID]

The record is added to the related table but the GUID is not populated.  Attachments are also added but are not linked to the feature layer.

I'm not sure what I'm missing that will allow me to add the GUID to the related table and have the related record linked to the parent feature. I am able to successfully link the two tables and populate the GUID field in Collector when NOT linking to Survey 123.

Supports ApplyEdits with GlobalIDs is true in the feature service. 

Thanks,

George Hilton

1 Solution

Accepted Solutions
by Anonymous User
Not applicable

Hi George,

After working with the URL config a bit I was able to get the result I wanted. Based on your XLSForm I would suggest you try the following URL in your pop-up configuration:

arcgis-survey123://?itemID=9c24cd21569440f8b442d412781144fe&field:HYDGUID={GlobalID}

What this is essentially doing is telling the survey, when launched from collector, to populate the text question for HYDGUID in your survey with the GlobalID of the feature you have selected in Collector. The {GlobalID} at the end needs to match the GlobalID field name exactly how it is in the feature service for your Hydrants layer. I had to set mine to lowercase based on how it is listed in the rest service.

Hope this helps

View solution in original post

8 Replies
RyanUthoff
Frequent Contributor

The one thing I noticed right away is that you should be using the curly brackets {} instead of the regular brackets in your Survey123 URL.

Edit: I read the documentation you provided and Esri is using regular brackets. With that being said, I've only seen Esri use the curly brackets in all of the other documentation I have read.

0 Kudos
RyanUthoff
Frequent Contributor

Another way you can troubleshoot is open the map in a web browser, then right click the URL and click "Copy link address" or whatever option it gives you for whatever web browser you use, then paste in a word document. You will be able to see if the GUID is passing through to the URL or not because you will be able to see the field values in the URL itself. This applies to any fields you are transferring over from Collector to Survey123. It will at least tell you if you have your URL configured correctly.

0 Kudos
by Anonymous User
Not applicable

I am also confused as to why the technical article: Populate a related table tells the reader to use the "ParentGlobalID" from the related table XLSForm in the web map pop-up URL that takes you to the Survey. Shouldn't this be the related table field named "ParentGUID"? The article never references a "ParentGlobalID" in the XLSForm before step 8c. Even the article, Integrate with other apps, that step 8 references explains that the URL must include a reference to the field using the name assigned to it in the XLSForm...in this case it should be the GUID field.

0 Kudos
GeorgeHilton__GISP
Occasional Contributor

At this point I am having no luck. I’ve gone so far as to contact ESRI support. I’m hoping to get an answer in the next couple days and will share what I find out.

by Anonymous User
Not applicable

I have done the same. Best of luck! I will update this thread if my case yields any positive results.

by Anonymous User
Not applicable

Hi George,

After working with the URL config a bit I was able to get the result I wanted. Based on your XLSForm I would suggest you try the following URL in your pop-up configuration:

arcgis-survey123://?itemID=9c24cd21569440f8b442d412781144fe&field:HYDGUID={GlobalID}

What this is essentially doing is telling the survey, when launched from collector, to populate the text question for HYDGUID in your survey with the GlobalID of the feature you have selected in Collector. The {GlobalID} at the end needs to match the GlobalID field name exactly how it is in the feature service for your Hydrants layer. I had to set mine to lowercase based on how it is listed in the rest service.

Hope this helps

GeorgeHilton__GISP
Occasional Contributor

Sergio,

Thank you very much !

This worked.  

I really appreciate your help

0 Kudos
JeffLegato1
Frequent Contributor

Your solution really helped me out. I could not find anywhere else on the web that has this critical information. Even on the ESRI help page for Integrating with Other Apps it doesn't mention this.  Nor is it mentioned on the Survey123 Populate Related Table. Thank you! 
&field:GUID={GlobalID} 

0 Kudos