I am very new to Survey123. I'm using Survey123 Connect to create a survey to be used in a browser. In my XLSForm I have a text field with a Calculation of pulldata("@geopoint",${location},"reversegeocode.address.Street"). Our default geocoder is hosted by us, but is publicly available. I can see the results returned to this text field in Connect, but not in a web browser.
Here the value is returned in Connect:
but not in a browser:
Has anyone experienced this before, or have an ideas on troubleshooting? Thank you!
Hi Jessica,
What version of Survey123 Connect did you last publish the survey with?
If not the latest, 3.3, please try this. If you have done so with 3.3, please upload your XLSForm so that we can take a look.
Thanks,
Brandon
Hi Brandon,
I am using version 3.3.51. How best to upload the XLSForm? Not sure I can do it here....
Can you please add the following to your XLSForm, load in Survey123 Connect, and copy/paste the output from the returned JSON in a .txt file and upload to this thread? This will let us know the parameters that are included for your locator.
Please be sure to include field length parameter value to ensure that the string can successfully write to the field. I would set it to 5000.
type | name | label | hint | constraint | constraint_message | required | required_message | appearance | default | readonly | relevant | calculation | choice_filter | repeat_count | label::language1 | hint::language1 | media::audio | media::image | body::accuracyThreshold | bind::esri:fieldType | bind::esri:fieldLength | bind::esri:fieldAlias | body::esri:inputMask | bind::esri:parameters | bind::saveIncomplete | bind::type | bind::esri:warning | bind::esri:warning_message |
text | json_string | JSON string | multiline | pulldata("@geopoint",${location},"reversegeocode") | 1000 |
Hi Brandon,
We are also having the same issue, working in the Survey 123 but no luck on the web or app. I tried changing the parameter as Jessica was able to fix it. I am including my Json output. Your input will be appreciable.
{"address":{"SingleKey":"R13AT312","Match_addr":"R13AT312"},"location":{"x":-114.08428106858287,"y":51.6535670216272,"spatialReference":{"wkid":4326,"latestWkid":4326}}}
Thank You,
Pramod Mishra
Alrighty, attached is the json returned from our geocoder. Thank you for looking into this.
I should also note, that in trouble shooting, I tried using the World Geocoder
pulldata("@geopoint",${location},"reversegeocode.address.Address","https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer")
I got the results I expected in Connect (an address), but when I published it, I always get an Intersection as a result.
Connect:
WEb:
For the behavior that you are seeing with the World Geocoding Service, you will want to actually use the following.
pulldata("@geopoint",${location},"reversegeocode.address.Match_addr")
You can see the expected outcomes for each parameter from the World Geocoding Service in the following Blog
Understanding Reverse Geocoding in Survey123
As for the results with your own locator, can you try one of the other parameters, like "ZIP", and see if you get a result?
Thanks Brandon. Address is holding the ZIP results from my geocoder and Address2 is the Match_Addr from World Geocoding Service.
Connect:
Web Browser:
I created another discussion for this same issue after not finding anything in the GeoNet search, and then came across this one in related content afterward...
I'm seeing the same inconsistencies in my reverse geocode as you. Works fine in the field app, but the same survey in the web form only returns intersections (sometimes the intersections don't even make sense if the point is away from one.) Trying to get a survey reconfigured for hurricane season and am eager to get this solved before then.
Inconsistency in reverse geocoding results across field app and browser
EDIT: There's now a workaround in the linked topic above.