This page contains known issues that can occur while using the Survey123 field app to complete a survey and provides suggestions to resolve them.
The following error may appear if your completed survey was unable to be submitted.
Select Yes in the message box to go back and edit your answers before submitting. Selecting No closes the error message and returns you to the outbox.
Some common send errors are listed in the following table:
|Error number||Error description||Diagnosis|
No child key field in 'FeatureServiceName' for parent 'RepeatName'
Child to parent relationship not found for 'FeatureServiceName' in 'RepeatName'
This error was introduced in the Survey123 1.10 field app and has been addressed as a hotfix. Redownload 1.10 from http://doc.arcgis.com/en/survey123/download/ or your appropriate app store.
The feature service specified when the form was loaded is no longer present, which can happen due to a schema-altering change to the form. The only solution to this is to manually migrate the data using recovery techniques.
The token that the Survey123 field app is attempting to pass to ArcGIS is being rejected. Often, this will be because the token the app's trying to pass has expired. In this case, repeat the action, and the error shouldn't recur.
String or binary data would be truncated
The result of a question is too long for the field in the feature service. Edit your answer to fit the character limit.
Operation rolled back
This can occur when a survey has hidden or calculate fields with the wrong data type. The data type of a calculation is dependant on the data type of each element of the calculation. The XLSForm default binding type for a calculation question is string. To overwrite this default, add a column to your spreadsheet called bind::type and enter the required type (for example, int or decimal).
The specified feature could not be updated
This can occur when attempting to send an edited survey that contains a repeat. Editing of surveys that contain repeats is currently not supported.
Unsupported spatial reference when downloading maps
This message may appear in the Survey123 field app when attempting to download a basemap to the device. Survey123 requires your basemaps to use the Web Mercator Auxiliary Sphere spatial reference. This is the same spatial reference used by Esri's World Topographic and other basemaps. If the Survey123 field app detects that your survey is associated with an offline basemap that is not the Web Mercator Auxiliary Sphere projection or is incorrect or missing, you'll get a warning. Note that in some cases, offline basemaps may be missing information about the spatial reference. In these cases, the warning message will indicate that the spatial reference is none. An offline basemap with an unknown (listed as none) spatial reference may still work correctly in Survey123 if the actual basemap was built using the Web Mercator Auxiliary Sphere projection.
If your device or app crashes while you're completing a survey, the survey response is recoverable. Any change in focus in the survey, for example, the user activating a new question, will trigger the contents of all previously completed questions being written to an autosave.json file. This file exists in the My Surveys folder during survey entry and is called on if the app exits abnormally before the survey could be properly written back to the database.
On startup, the Survey123 field app checks for the presence of the autosave file. If found, you will be notified that a survey response has been recovered, displaying the survey name and instance name.
Selecting Discard survey will delete the autosave.json file, losing the recovered data. Continue survey will open the survey, populating it with the recovered data. The autosave.json file is automatically deleted when a survey is successfully completed, or saved as a draft.
The recovered survey will include all previously completed questions except for the one being completed on crashing. This is because the trigger for saving a question is the focus change.
If you don't want the survey to be autosaved every time you start a new question, you can use the bind::saveIncomplete column to add save milestones to your survey. Set the value to true for each question that you want to trigger a save. bind::saveIncomplete can be applied to the following questions types:
- Select multiple
- Select one
Log errors to a console
If you observe error messages that aren't listed in this topic, or other unexpected behavior, it may be useful to keep a log of information from the Survey123 field app to share with someone else (such as Esri Technical Support staff) to troubleshoot. The Survey123 field app contains support for the AppStudio for ArcGIS Console tool, which provides the ability to capture messages sent from an app into a log that can be displayed on a desktop or the web, or saved to a file. You don't need to install and run AppStudio to use this feature. To enable logging in the Survey123 field app, open the Menu on the app's home page, select Settings, and go to the Diagnostics tab.
To capture messages to a file, select the Logging switch to enable logging. When no AppStudio console is selected, the Log output location is automatically populated with the default log file location. You can edit this file path. To capture messages to a syslog-compatible console online, enter its URL in Log output location in place of the log file location.
The Diagnostics tab displays any instances of AppStudio console currently open on your network. A searching circle symbol will display on the Diagnostics tab until it has found a running AppStudio console. If you first select an AppStudio console, and select the Logging switch to enable logging, logging information will appear in that console. For more information, see Capture console output in the AppStudio for ArcGIS help.
Recover data from a mobile device
There are times when you can't send surveys from your mobile device—either wireless Internet connectivity isn't possible, or something unexpected has happened to your mobile or server database.
Your survey data is stored on your mobile device as a .sqlite database. This database can be copied and edited to aid data recovery.
If your issue is Internet connectivity from your mobile device, you can copy your .sqlite database to your desktop, open it in the desktop version of the Survey123 field app, and send your surveys. Before starting these steps, download the survey you are attempting to recover the results of in your desktop version of the Survey123 field app.
- Copy the .sqlite file from your device.
The file will be in Storage > ArcGIS > My Surveys > Databases.
If your device is iOS, you will need to connect it to your desktop with iTunes or some other browsing tool (for example, iExplorer).
- Paste this .sqlite file into the equivalent Survey123 folder on your desktop (for example, on Windows it
would be C:\Users\Username\ArcGIS\My Surveys\Databases).
If you have already collected surveys on the desktop, you may already have a database there. If so, you can save this into a subfolder, or rename the database folder and create a new one for the copied files. If you don't have completed surveys you need to send, you can safely delete the existing database on the desktop.
- Open the Survey123 field app, go to Settings > Advanced and select the Fix Database button.
- Browse to your survey and see that there are now surveys ready to send.
- Send your surveys.
Sometimes the Fix Database tool may not recover your data, or you may have other issues with your database. In these cases, you can also manually modify the paths stored in the .sqlite database.
The following steps describe how to manually modify your .sqlite database. Before starting these steps, download the survey you are attempting to recover the results of in your desktop version of the Survey123 field app.
- Copy the .sqlite file from your device. The file will be in Storage > ArcGIS > My Surveys > Databases.
- Paste this .sqlite file into the equivalent Survey123 folder on your desktop (for example, on Windows it would be C:\Users\Username\ArcGIS\My Surveys\Databases).
- Open the .sqlite database in a database editor. An example editor is DB Browser for SQLite.
- If you are using DB Browser for SQLite, look at the path column on the Browse Data tab. You'll see that each record represents a single completed survey, and each has a path reference to the device where it was collected. To send the surveys on the desktop, you need to change the path to match the survey data path of the desktop.
- To change the record, go to the Execute SQL tab and type the following, using your own local path details:
UPDATE Surveys SET path = REPLACE (path,"/sdcard", "C:/Users/Me") where path LIKE "/sdcard%"
- Go back to the Browse Data tab and see that the paths have changed.
- Close the SQLite application.
- Open the Survey123 field app and see that there are now a number of surveys ready to send (there should be a red number in the corner of the survey thumbnail).
- Send your surveys.