Experience Builder Survey123 widget not connecting to globalid for editing

765
5
Jump to solution
11-30-2021 11:52 AM
Labels (1)
TaraHaynes
New Contributor III

Issue: when attempting to use 'Edit' option within Survey123 widget in EB, the error "Editing is not possible because the globalId parameter was not provided" appears.

Purpose of app: to allow a manager to view and edit points collected in the field using a Survey123 form.

Situation: 

Survey123 widget added & configured: 

  • Survey: connected to existing
  • Mode: "Edit an existing record"
  • Choose existing data: map containing survey data selected, survey layer selected

Widget loads, but this error is given:

TaraHaynes_0-1638301444871.png

 

Troubleshooting:

  1. Checked that 'GlobalID' field is turned on in Survey123 platform - it is
  2. Checked that 'GlobalID' field is turned on in AGO item page - doesn't seem that I can turn the field on in here, could this be the problem?
  3. Checked that 'GlobalID' field is appearing within Experience Builder - it is
    TaraHaynes_1-1638301577003.png
  4. Not sure where to go from here... am I missing something, or is this a bug?

 

Workaround:

I am currently using the embed widget with a URL parameter for editing the survey (add ?mode=edit&globalId={GlobalID} to the end of the survey URL in embed widget), which is working. Unfortunately, it does not load on startup, and once I have connected with the survey through that URL it frequently triggers a 'Leave site?' dialogue when moving between points. I am hoping to improve the user experience by using the Survey123 widget itself.

0 Kudos
1 Solution

Accepted Solutions
TonghuiMing
Esri Regular Contributor

@TaraHaynes - based on your description, the workaround using Embed and the Survey widget should have the same behavior, before any feature is selected. Both methods will require users to select one feature in order to get the GlobalID for further actions. Give it a try and see if that helps.

View solution in original post

0 Kudos
5 Replies
TonghuiMing
Esri Regular Contributor

@TaraHaynes - based on your description, the workaround using Embed and the Survey widget should have the same behavior, before any feature is selected. Both methods will require users to select one feature in order to get the GlobalID for further actions. Give it a try and see if that helps.

0 Kudos
TaraHaynes
New Contributor III

Well, that was a simple solution! Thank you for the response - I'm currently on emergency deployment and some extra brain power is much appreciated!

0 Kudos
AllisonMuise2
New Contributor III

@TonghuiMing The embed workaround doesn't seem to work anymore in cases where the survey is not public. Do you have any other suggestions?

AshleyHayes2
New Contributor III

@TaraHaynes   Is there a way to turn off that "Editing is not possible because the globalid parameter was not provided" message or give the survey widget a default feature to open?  I know that selecting a feature makes the message go away, but I would really prefer to not see it at all because it probably confuses my users and potentially makes them wonder if I set something up incorrectly.  Thanks!

0 Kudos
TaraHaynes
New Contributor III

I have a convoluted workaround involving the List widget... I know the List widget used to autoselect the first record upon opening the app, which was nifty, though it doesn't seem to do that any more / I can't figure out how to do it again.

However, it can still be used in a different way. 

1. Create a Section. First 'View' is a List widget, second 'View' is the survey embed. Use the URL parameter for the survey embed, as mentioned in the original post.

2. For the List Widget: In 'Action > Message Action', add a trigger for 'Record Selection Changes'. Select 'Framework'. 'Trigger Data' should be the feature you're selecting in the map, and 'Action Data' should be the feature that is informing the Embed widget. These will probably be the exact same feature (so they will be auto-bound), but if not, they should connect on the 'GlobalID' field.

3. Add a Button to the List Widget to link to your second / Survey123 view. Style the rest of the List Widget as you like - I used this as a way for users to check the data of the point they selected before editing, and labeled the Button as "Edit Information". (I no longer have access to the app I built for this post, but this is the idea:)
button.PNG

4. When the user clicks the button, it should take them to a loaded Survey123 view, since clicking the item on the List selects the associated record across the framework.

5. Make sure you have a button on the second View to get back to the list!

The only downside is that if the user clicks the map while in the Survey123 view, it will unselect the feature and throw the error again... usually I put text like 'Select Point on Map to Edit' above the Survey123 widget, just in case.

Hopefully that helps... it's the best I've come up with, though hopefully ESRI is working on a way to auto-select the first record or something because so many of their widgets have this issue with looking funky before things are selected! If you find a better solution, too, please let me know!