What is New in Survey123 for ArcGIS v 2.4 (September 2017)

We are pleased to announce the availability of version 2.4 of Survey123 for ArcGIS.  This update is loaded with new functionality, enhancements and critical fixes.

Before we start, just a few quick reminders:

You can download the Survey123 field app from the iTunes, Google Play and Amazon stores.

Survey123 Connect as well as the desktop flavor of the Survey123 field app are available from our download page.

Clear your browser cache to get the latest updates to the Survey123 website.

Here are the highlights of what is new in this release:

Survey123 website

Likert Scales in Web Designer: The Likert scale type of question has been added to the Survey123 Web Designer. Likert scales are the most widely used approach to scaling responses in survey research and they are named after its inventor, psychologist Rensis Likert. Typically a Likert scale is used to allow people respond to questions of interest, in order to measure people’s attitudes, but a Likert scale can also be applied to other more  general questions where you want to select a choice among a range of sorted options.

You will find the Likert type of question available in the Common Questions section of Web Designer. Simply drag and drop it to your survey! You will be able to easily change the labels shown in your scale as well as the number of options available.

Excel and KML output formats in the Data tab: From the Data tab you can now export your survey data to KML and Excel formats.  These two new outputs go on top of the CSV, Shapefile and File Geodatabase formats already available.

Access Group details from the Collaborate tab: A new link has been added in the Collaborate tab to let you easily access group details. This is useful when you need to know, for example, which users belong to a group, or what other surveys or maps are accessible to a particular group.

Map skipped questions in the Analyze Tab: This one is a subtle enhancement, but quite useful in some cases. As you know, in the Analyze tab you can represent in a map the responses given to a particular question in your survey. Up until now, surveys where your question had been left unanswered (skipped) would  not be  shown in the map. Starting with this release we will add the locations of surveys where the question was skipped and flag them as such.  This can help you in some QA/QC workflows where knowing in what locations a particular question was skipped is important.

Other enhancements and fixes: Here are some other minor enhancements and fixes in the Survey123 website:

  • BUG-000106888 Question hints now support special characters (such as %). This issue caused some trouble before.
  • BUG-000105851 This fix accounts for some situations where the map extent in the Individual Response report was set incorrectly.
  • BUG-000099612 Integer values are reported as decimals in the Analyze Tab in Survey123 website.
  • When you rename a survey using the Edit Survey Info dialog, the name of your survey’s folder in ArcGIS will change accordingly.
  • The Individual Response report in the Data tab now will work well in cases where you nest a repeat within a group.
  • Web Forms now support pulldata functions working against geopoint questions.
  • Blank text boxes no longer display under note questions.
  • Fixes to select_multiple questions on Firefox.

Survey123 Connect and Field App

Support for editing repeats: Back when we released version 2.0 of Survey123, we introduced the concept of the Inbox. The Inbox folder can be enabled in a survey to support editing of existing records from the Survey123 field app. If you are not familiar with the Inbox, I recommend you watch this 2 minute video tutorial.

One of the biggest limitations of the initial implementation of the Inbox in 2.0, however, was that it did not support working with repeat groups (which use related records). With version 2.4, that limitation is gone.

As of 2.4 you can include in your Inbox surveys that contain repeats, but even more importantly, you can tightly control how these repeated questions (related records) can be edited. In some cases, for example, you may want to hide existing related records, but allow field users to add new ones. In other cases you may want to let people look at existing related records for their reference, but not change them. You may even want to limit the number of related records that can be displayed or edited.

At first, the mechanics of enabling editing on a survey with repeats is no different than usual. As described in this help topic, all you need to do is to activate the Inbox folder in your survey.

By default, surveys in the Inbox will allow you to add new entries into the repeat (creating new related records), but you will not be able to see any related records that may already exist. This behavior is adequate for workflows where you want to let people add additional related records to a feature, but you do not want the field user to see other related records.

Using a new column in the XLSForm called bind::esri:parameters you can control which related records will be downloaded into the mobile device, and whether you want to make them editable or not. In this column you can add one or more of the following parameters as key-value pairs, separated by a space:

query: The query parameter specifies which related records will be downloaded for display and/or editing purposes. By default, no query is set, so no related records are fetched. If you add something like query=’LastInspectionYear>1995’, only inspections after 1995 will be shown. You can also add a query such as query=’1=1’ to force all related records to be fetched. As a shortcut, if you simply add the parameter query with no additional query expression, all related records will be fetched.

allowUpdates: Controls if downloaded related records can be edited or not. This parameter can be set to either true or false. If you include allowUpdates=false, then your downloaded related records will not be editable.  Just for clarity, if the field user adds any new additional related records, those will be editable even if this parameter is set to false. You will want to set this parameter to false when you do not want  field users to edit related records that already exist in your feature service.

allowAdd: Controls whether new rows can be added to a repeat. This parameter can be set to true or false, but the default is true.: i.e. allowAdds=true. Note that this parameter only affects surveys that have already been submitted (in the Sent box) or downloaded to the Inbox. When collecting a new survey, new related rows can always be added irrespective of the parameter.

orderBy: Lets you specify the order in which related records will be displayed within your repeat. e.g. orderBy=occupant_name will order related records by the occupant_name field.

Using one or a combination of the parameters above you have great flexibility to control the experience for the field user. With this new implementation, it is possible to support a wide variety of asset inspection workflows for example.

As of this release, the Inbox lacks support for downloading attachments. That is, you can use the Inbox against a survey that includes attachments, but  the Inbox will not populate  signatures, annotated images, audio or image questions.  All these types of questions will appear empty, as if they had no data. As for the rest of questions, you will be able to download  data for them and update  them as well.

Also, to play on the safe side, when you edit surveys from your Inbox we will disable editing on these types of questions. This means that if you open a survey from your Inbox  to make edits to it, all questions of type image (photos, signature, annotate, draw) as well as audio questions will appear not only empty, but also disabled. This is to avoid people from accidentally attempting to change data  in them.

We are considering adding support in a future release for editing attachments.

To learn more about editing with repeats, check this help topic.

Audio questions: We have run into quite a few requests lately for audio questions, so we decided to add support for them. Some requests came from conservation projects where wildlife had to be recorded. We also run into folks doing surveys of toponyms where it was necessary to capture the pronunciation of placenames in the local language. Recording audio has also been requested by people who need to capture information very quickly for later processing, and we even were told that audio recording would be used to help create noise maps.

In this first implementation, the audio type of question will not let you capture more than 2  minutes worth of recording, although we plan to let you record for longer in the future.  Audio recordings are stored as attachments in the underlying feature service.

We have published a public sample audio survey so you can try this new question yourself. In your mobile device, install the latest version of the Survey123 field app and navigate to: http://bit.ly/Survey123Audio   This link will open the sample audio survey so you can record audio. Alternatively, once Survey123 2.4 is installed, scan the barcode on the side to open the survey in your phone.

If you want to look at the  data you submitted  and listen to your recording, use  this web mapping application.

If you want to add an audio question to your survey, simply use the  new audio question type.

Note: Audio questions are supported exclusively in the Survey123 field app. Audio questions are not supported in web browsers.

Signature, Draw and Annotate: You may already be familiar with the ability in Survey123  to capture signatures. This was added way back in 2015. When the signature appearance is set on an image type of question, a small signature-pad is presented to the user. This signature-pad is of small size and has a white background over which you can sign using black ink: Simple.

With 2.4, you can also use the draw appearance, which essentially enables a drawing-pad: it is bigger and it lets you use pens of different colors and thickness. This drawing-pad is ideal to capture simple sketches and diagrams.

The annotate appearance goes one step beyond, allowing you draw on top of a photo or background image.  The photo can be taken on the spot by the field user, or calculated in your XLSForm.

The use of the annotate appearance on image questions has many applications. In an inspection workflow, you can use the annotate appearance to let users take a photo of the asset and highlight in the photo any repairs that are needed. Arrows, text, circles and freeform sketches in different colors are allowed.

You can also choose to set the background of the drawing pad to a predefined image, such as a diagram of the asset. Say for example you are inspecting transmission towers (electricity pylons). Using a calculation, you can display the appropriate schema of the transmission tower model being inspected so inspectors can markup the diagram to highlight defects.

To set the background of the annotate drawing pad to a predefined image, you need to copy the png or jpg image\s into the media folder of your survey.  Then, you can reference them from either the default or calculation columns of your XLSForm.

In the above transmission tower inspection survey the background shown in the annotate question is defined by the transmission tower type. Note that  a select_one question has been added with choices for Steel H Frame, Tubular Steel and Wood H Frame. The response to this question determines the transmission tower illustration to be shown as a background in the annotate drawing pad.  Once markup such as circles, text and arrows have been added, the resulting image gets saved.

Without aiming at illustrating what an actual Transmission Tower Inspection looks like, but simply to show how you can dynamically set the background of the annotate question, I published the Transmission Tower Inspection survey so you can try it in your device.  Try opening http://bit.ly/TransmissionTower  or scanning the QRCode on the side.


Note: Signature, Draw and Annotate appearances are not yet supported in web browsers.



Autosave: As of 2.4, the Survey123 field app will automatically save all user input in the device immediately after entered. In case that the user accidentally closes the app, or even worse, if the app crashes, all data will be safely saved.  When the app is started again, a dialog will prompt the user to either recover the app (and the data) to the point where it was last, or start with a new survey from scratch.

The autosave functionality is enabled by default, so you do not need to do anything to take advantage of it.

In very large surveys with hundreds of questions, you may however choose to trigger the autosave functionality at specific points in your survey. In our own testing we have not observed a noticeable slow down due to autosaving, but we wanted to expose a mechanism so you can control it more tightly if you consider this necessary.

A new column in XLSForm called bind:saveInComplete lets you trigger autosave for the entire form at specific points within your survey. Simply add the value true to this column to indicate you want to trigger autosave at that question.

If you leave the entire bind:saveInComplete column empty, Survey123 will automatically autosave on every question.

Null field type: We heard again and again, that sometimes you want to add questions into a smart-form but not necessarily persist any data for that question in the feature service.

Sometimes the idea is that you want to capture some user-input, to then do some calculations on that data and ultimately store the results of your calculations in the feature service, but not necessarily the direct input of the user. Say for example you want capture the length of a pipe in meters, but you let people enter the length in meters or in feet. You will want to add in the form one question for the length, and a second one for the units in which the length is expressed.  In the end you  only care about the length in meters, so the initial input of the user as well as the units are not stored. Only the calculated length in meters will be stored. Another example may include capturing the age of a building. You may want to ask in what year the building was built, but you really want to store just the calculated age.

Another scenario where you may want to display a question in the form but not store its response is when you ask a user a binary yes or no question and you use that information to hide or show a set of questions.  Your yes/no question can help you simplify the data capture experience, but the actual response to the question is not relevant from a data perspective.

As of 2.4, you can set the value of the bind::esri:fieldType column to null, to indicate that a particular question is not to be stored in the feature service and can be applied to all question types except geopoint, hidden, audio and image (as well as select questions combined with the or_other qualifier).

A particular scenario where the null field type is very handy relates to multiple-choice questions.  As you may know, responses to multiple-choice questions are stored as a comma separated list of values. Using the null type of field and calculations, you can store the user selection to multiple-choice questions in a more database friendly way through a series of fields (one per choice) with binary (checked or not) values. A more in depth discussion of this technique is described in the blog post Understanding Multiple-Choice Questions in Survey123 for ArcGIS

iOS11: Do not fear upgrading to iOS 11. We tested the Survey123 mobile app carefully with it, and everything runs smoothly.

Other enhancements and fixes: Last but not least, here is a selection of other relevant minor enhancements and fixes for Survey123 Connect and the Survey123 field app in this release:

  • Survey123 Connect now includes easy access to discussions in our Survey123 for ArcGIS GeoNet group.
  • The built-in barcode reader is faster across all platforms. In Android, the barcode is now much more stable.
  • Improved positioning in Android devices when GPS signal is not available.
  • Various fixes in the Survey123 field app and Connect to address wrong text characters displayed in Russian, Polish, Norwegian, Swedish, Finnish, Danish and Thai.
  • Select_one questions can now be  set to read-only.
  • BUG-000104950 Survey123 for ArcGIS signature question submitted using iOS devices is only partially visible whereas is completely visible on Android and Windows devices.
  • BUG-000103616 Renaming a photo in a repeat in the in Survey123 for ArcGIS field app changes the photo name of all photos in the survey.
  • BUG-000106064 Deleting an image copied from ‘paste answers from favorite’ deletes image for all submitted records in Survey123 for ArcGIS.

Survey123 for Developers

The source code of Survey123 for ArcGIS is available to AppStudio for ArcGIS developers. This allows organizations to customize, extend or simply white label the Survey123 for ArcGIS field app. As usual, we have updated the source code of the Survey123 Enterprise Templates in AppStudio for ArcGIS.

Please keep in mind that the next version of Survey123 for ArcGIS will be built on top of AppStudio for ArcGIS 2.1, which will be released sometime in October or early November.  Absolutely no breaking changes are expected, but keep in mind that for the next update of Survey123 you will also need to refresh your AppStudio for ArcGIS Desktop install.

This entry was posted in Apps, ArcGIS Online, Developer, Mapping and tagged , . Bookmark the permalink.

Leave a Reply


  1. kenndk says:

    Great release! However when will the 2.4 template be deployed top AppStudio so we can start using said new awesome features like annotation and auto save in our custome dev apps?