Skip navigation
All Places > Survey123 for ArcGIS > Blog > 2018 > July
2018

[Published: July 31st, 2018]

[Updated: August 2, 2018]

 

We are happy to announce a new update to the Survey123 Website, Survey123 Connect and the Field App. This release includes a handful of important fixes. 

Survey123 Web Designer

 

Fixes to Survey123 Web Designer have been applied and you do not need to do anything on your end to take advantage of them.

 

  • BUG-000115501: Unable to publish a survey if it contains a relevant rule and related field name has been updated in Modify Schema: This issue was introduced in version 3.0 as described here: Survey 123 publishing error message . Now addressed.
  • Questions are not shown in the right order in Web Designer after manually shifting question order: Now addressed.
  • Duplicated basemap entries in the basemap selector of the geopoint question. Addressed.
  • BUG-000115631 When the ArcGIS Online Organization language is set to Spanish, the Data tab of a survey on the survey123 website will be blank. Addressed.
  • BUG-000115313 The Survey123 Website does not generate feature layers with SupportsApplyEditsWithGlobalIds=true when publishing against ArcGIS Enterprise. Addressed

 

Survey123 Feature Report Service (Beta)

 

Fixes to the Survey123 Feature Report Service have been applied and you do not need to do anything on your end to take advantage of them.

 

  • BUG-000115108: Generating reports that contain attachments added outside of Survey123: Some of you have reported that the Report Service in Survey123 will fail to generate a document if the feature contains image attachments added from Collector for ArcGIS, Web AppBuilder, ArcGIS Pro etc. With this update, the document will be generated, although the attachment will be ignored.  To understand this behavior, it is important to describe how image attachments are added into reports. In Survey123, when a new image question is added it is mandatory to select a question identifier. For example: PhotoIssue, or PhotoCarBack, InspectorSignature etc.  This identifier is used to properly place the photo, sketch or signature in your report.  Survey123 is the only app in ArcGIS that lets you tag attachments this way.  Since attachments submitted from other apps are not tagged, you cannot reference your attachments in the report template. So again, with this update the document generation process will no longer fail, although the attachment will be missing. Until other apps in the ArcGIS platform are able to tag attachments, the Survey123 report service will not be able to include photos from other apps in the report.
  • Generating reports against data in ArcGIS Enterprise: This issue is a variation of the previous one where the Report Service was failing against surveys in ArcGIS Enterprise containing attachments. With this update the Report Generation will not fail, although the attachments will be missing because image tagging is not available yet in ArcGIS Enterprise.
  • Handling large images. The Feature Report service is now more tolerant to large images (panorama photos for example).
  • Handling repeats with no records: With this update, the Report Service will not fail if your survey includes a repeat with zero records.

 

Survey123 Field App

 

The new build of the Survey123 field app is now 3.0.134 and it is available for download from the Google Play, Amazon and Apple app stores. If you use the Survey123 Field App on Windows, Mac or Ubuntu, you can download the latest from our Survey123 for ArcGIS | ArcGIS Download page.

 

  • BUG-000108408, BUG-000114360, BUG-000114216  These 3 issues are related and affect all of you who want to submit attachments while disabling or limiting query capabilities in the Survey123 feature layer. This is useful when your survey contains sensitive information and you want to block queries on the data while allowing users to submit. The problem is discussed at Cannot attach images in Public Survey , Bug when submitting survey , Problem with public survey. The cause of this problem is an ArcGIS Online feature service defect, plus an issue in the Survey123 app that was failing to report the underlying problem in the ArcGIS Online feature service. With this update, the Survey123 field app will properly report the submit error through a dialog. ArcGIS Online, as of August 2, also addresses the feature service problem. We are actively working with the ArcGIS Online team to get the feature service problem addressed as soon as possible (potentially August 2 or August 3). This will complete the fix.  In the meantime, please refer to this Esri Technical Article describing how to configure your feature layer Bug: Unable to add images to a survey in Survey123 for ArcGIS

 

Please note that submitting attachments against feature layers with restricted query capabilities is still not possible from the Survey123 Web App. This update fixes the problem int the Survey123 native app, but we still have a fix pending for Web Forms. The team is actively working on this fix with a goal of releasing a fix around the end of August 2018.

 

 

Survey123 Connect for ArcGIS (Build 3.0.128)

 

The new build for Survey123 Connect for ArcGIS is now 3.0.128 and it is available from our Survey123 for ArcGIS | ArcGIS Download page. You will need to uninstall previous versions of Survey123 Connect in your computer before you can install 3.0.128.

 

  • BUG-000115491 Survey123 Connect Sign In button is sometimes broken when Windows Credential Manager has the credentials stored.   This BUG was introduced in version 3.0, causing login issues into both Survey123 Connect and the Survey123 Field app in some environments. Thanks to all who reported this problem and helped us find its source.Survey123 Connect sign in issue , Can't Sign In with Survey123 

 

 

For an archive of all new features added in Survey123 releases, visit our What is New Help Topic.

 

We are currently working on another focused fixes-only-update for release in August 2018.

[Last update: January 25, 2018]

 

Starting with our July 2018 update, Survey123 supports working with Microsoft Flow. Microsoft Flow is a cloud-service that lets you easily build workflows to automate repetitive tasks across multiple applications and services.  Here are some examples of the type of things you can do with Survey123 and Microsoft Flow:

 

  • Notify a supervisor via e-mail and/or SMS, when a new high priority incident is reported through Survey123.
  • Add a reminder to an e-calendar 6 months after a new installation is submitted via Survey123.
  • Add a new row into a spreadsheet, sharepoint list or SQL Server database when a new survey is submitted.

 

In this ArcNews story, you can learn about how the Massachusetts Department of Conservation and Recreation’s Office of Watershed Management is leveraging Survey123 and Microsoft Flow to streamline boat inspections.

 

To get you started I will describe, step by step, how you can automate e-mail notifications after one of your surveys is submitted. This is a simple scenario, but going through it, you will quickly realize how to build your own different flows to do entirely new things.

 

Getting Started with Microsoft Flow

 

Microsoft Flow is included with Office 365. The free version of Flow has limited capabilities, but you can upgrade to premium subscriptions. For details check the Microsoft Flow pricing page.  You can also create a 90-day free Microsoft Flow trial.

 

Unless your subscription to Office 365 already shows Microsoft Flow in the main page, you will need to launch Flow from the Office 365 App Switcher as shown in this animation:

 

 

Within Microsoft Flow, go into My flows and select Create from blank. This will present a gallery of Connectors, from which you will be able to trigger your Flow.

 

 

 

Setting up a Survey123 trigger in your Flow:

 

The very first step in every flow you create is to define a trigger. Search for Survey123 in the gallery of connectors. You will notice that Microsoft Flow includes many connectors out of the box. That is the beauty of it!

 

 

As you can see, the Survey123 Microsoft Flow connector has only one trigger: When a survey response is submitted.   After selecting the When a survey response is submitted trigger, you will be prompted for your ArcGIS  credentials.   This is because you will need to select among the surveys that you own, the one that will trigger your flow when a record is submitted. Once logged in with your Survey123 credentials, Microsoft Flow will keep your ArcGIS connection for later use.

 

 

In my case, I selected the survey called Incident Report.  My Incident Report survey has a few questions such as the location of the incident, a photo, comments and priority, which can be High, Medium or Low.

 

 

Adding condition logic and actions

 

Once your survey trigger is set, you can start adding conditions, actions and loop statements to your flow. In this example I will add a condition to check if the value of the Priority question in the survey response is equal to High

 

The survey data is exposed within Flow, so you can dynamically extract values from the survey submitted and use them in your condition expression.

 

 

Next, I will add an action in the event that the condition (Priority is equal to High) is true.  I want my action to send an e-mail to someone.  I will choose the Gmail connector, and sign in to grant Microsoft Flow permission to use my Gmail account to send e-mails.

 

 

E-mail connectors will let you define the recipient, subject, body and attachments in the message.  Again, bringing values from the survey response is possible too when defining actions. Note how in the subject and body of the e-mail for example, you can include values from the submitted data, such as the Date, Priority, Comments etc.  If you get creative, you can do other things such as building a link to a map centered at the Incident's location.

 

 

The body of the e-mail is made out of HTML tags. This helps you format your email, by highlighting certain text in bold, or adding breaklines when appropriate. To create a map link illustrating the location of the incident I looked at the ArcGIS  Use URL parameters to modify maps—ArcGIS  Help | ArcGIS help topic. Note how the X and Y coordinates of the submitted incident, can be dynamically added to the link in the e-mail.

 

In a later section in this blog post I will describe some tips to dynamically get data from your submitted survey.

 

While you could keep adding additional conditions and actions, I will leave it here, and save the Flow.  I encourage you to explore the many connectors included with Microsoft Flow. 

 

 

 

Testing your Flow

 

Now that your Flow is saved, it will be triggered by Survey123 every time a survey response is submitted.  Do the test yourself: submit data with your survey from either the Survey123 web or field apps and your recipient will receive an email.

 

Learning more about Microsoft Flow

 

Microsoft Flow provides many capabilities that are out of the scope of this post. If you would like to learn more about Flow I suggest the following:

 

 

Handling Dynamic Content from Survey123. A few tips.

 

One of the great features in Microsoft Flow is that you can process incoming data submitted through your survey response. For example, in the scenario above I processed the values in the Priority question to build a condition. I also used the values in the Comment and Location question for the subject of the e-mail.  

 

Data from your form is exposed through the Dynamic Content dialog in Microsoft Flow. You can directly bring values or apply additional expressions to them.

 

When you bring data from the submitted survey into your Flow using Dynamic Content, keep the following in mind:

 

  • If you have hidden questions in your survey (or metadata questions such as start, end, username etc), you will not see them exposed in the Dynamic Content dialog. However, you can always add them manually into Flow following this syntax:

 

?['feature']?['attributes']?['yourhiddenquestioname']

 

  • Date and DateTime questions from Survey123 are exposed in Microsoft Flow using the UNIX time format.  If you want to convert UNIX time into a readable date string, use the addseconds function. For example:

 

addseconds('1970-1-1', Div(triggerBody()?['feature']?['attributes']?['mydate'],1000) , 'yyyy-MM-dd')

 

  • The output of a select_one question in Microsoft Flow will not be the label of your choice, but its name.  If you want to include the labels of your selected choices in the payload of the webhook, so you can use them through the Dynamic Content in Flow, then use the jr:choice-name() function to extract the label in a calculate or hidden question.

jr:choice-name(${activity},'${activity}')

The first parameter represents the choice name. In the example above, I am passing the choice name selected in the 'activity' question.  The second parameter is the question in the form using the list where the choice has been made.  Very often, the first and second parameters will reference the same question, but note that the second parameter is enclosed with quotes, because it does not refer to the value (response) of the question, but to the actual question itself.

 

Some additional technical details

 

Technically, when you save your Flow, Microsoft Flow registers a webhook in your own survey. Webhooks are the foundation for having Survey123 communicate with Flow to make all the steps described above work.

 

A webhook is simply a URL Callback. That is, a URL that is invoked by an app when a particular event occurs, to pass some data to another app.  In our case, the apps are Survey123, which invokes the URL, and Microsoft Flow, which is the receiver of the webhook.

 

In the initial steps described above, when the trigger was setup by selecting the survey, Microsoft Flow created a unique URL representing your Flow. This url was registered as the webhook URL in your own survey when you saved the Flow.

 

If working with the Survey123 field app, it is important to remember that users will need to download the survey into the app after the webhook URL has been registered. 

If you want to look at the webhooks registered in a particular survey, simply follow these steps:

 

  1. Log into survey123.arcgis.com and select a survey
  2. Switch to the Settings tab of the survey
  3. Open the Webhooks section.

 

 

You really do not need to setup webhooks manually when using Microsoft Flow, but the webhook dialog can be of interest in case you are working with other Workflow Automation services or with your own custom developed web service end points.

 

Known limitations and roadmap:

 

I believe that with this first implementation of the Survey123 Connector you will be able to do quite a bit, but there are some known limitations I want to highlight:

 

  • Attachments are not going to be exposed in the Dynamic Content dialog. You cannot reference attachments manually either. We are working towards enabling access to attachments within Flow in a future release.
  • Data from repeats will also be missing in Microsoft Flow at the moment.

[Published July 17, 2018]

[Updated July 21, 2018]

[Updated July 31, 2018]

 

 

This blog post is for those of you that have upgraded the Survey123 field app to version 3.0 and realized that your surveys can no longer submit data to your feature layers. 

 

Here is a screenshot of the error that the Survey123 3.0 field app will show when working against a feature layer with no supportsApplyEditsWithGloablIDs.

 

If your surveys do not show evidence that supportsApplyEditsWithGloablIDs is a problem, then you should ignore this blog post.

 

 

 

 

A little bit of context

 

As described in our Bull Release (3.0) announcement, the Survey123 3.0 field app no longer can submit data to feature layers where the supportsApplyEditsWithGloablIDs property is set to false.  This is a somewhat obscure property that cannot be simply be turned on with the push of a button. Instead, it switches on automatically when your feature service meets a number of requirements:

 

  • All layers within the feature service must have an indexed GlobalID field.
  • All relationships (layer to layer, layer to table, layer to attachments, table to attachments) must use GlobalID fields (as opposed to ObjectID fields).
  • If using an enterprise geodatabase, the feature service cannot include versioned feature classes.
  • If using Portal for ArcGIS, only versions 10.4 and newer support this property.

 

The reason why Survey123 requires supportsApplyEditsWithGloablIDs is that this setting is critical in order to guarantee clean transactions when uploading attachments (particularly when working in low bandwidth conditions) and also to support nested repeats.

 

We are aware that many of you have feature services where supportsApplyEditsWithGloablIDs could not be enabled immediately, so we made available a backwards-compatibility build of Survey123 2.9 (also referred to as Survey123 Classic), which has been made available on Windows, Android and Mac.  Apple has not yet approved this build in the store so far, but in exceptional cases Esri could provide access to older builds as a temporary measure (Please contact Esri Tech Support for that).

 

To download Survey123 Classic (2.9), use the version switcher in the top-right corner of our Survey123 for ArcGIS | ArcGIS Download page.

 

 

Survey123 2.9 (Classic) is a temporary solution for all of you who can't really adjust to the requirements of version 3.0.  In this blog post I will describe a couple of approaches to enable supportsApplyEditsWithGloablIDs in your feature layers so you can work with 3.0 against your existing layers.

 

Before embarking into these steps, consider if you really need your surveys to work against existing layers. In many cases, you can simply publish a new version of your survey with Survey123 Connect and have field users download your new survey.

 

If you want to keep Survey123 3.0 (and other previous versions) working against your existing layers, then read on...

How to check if supportsApplyEditsWithGloablIDs  is enabled in your feature layer

 

The supportsApplyEditsWithGloablIDs property is not advertised through the user experience in ArcGIS Enterprise or ArcGIS Online .  This property is only visible within the json definition of your feature service.

 

  • In ArcGIS Online or your portal in ArcGIS Enterprise, navigate to the Page Details of your Form and click on the Form Layer to open the Feature Layer behind your Form.
  • Next, open the Services Directory view of your Feature Service and display it as JSON.
  • Look in the JSON for the supportsApplyEditsWithGloablIDs

 

 

You cannot simply edit the supportsApplyEditsWithGloablIDs property. This property only turns true when certain requirements in your Feature Service are met as described in this blog post.

 

Working with Hosted Feature Layers in ArcGIS Online and Enterprise

 

If your feature service does not have attachments or relationship classes: This is the easiest scenario. To enable supportsApplyEditsWithGloablIDs, simply enable the sync capability in your feature service. This can be done through the Settings of the feature service.  From ArcGIS.com go into your Content, navigate to your survey folder and look for the Feature Layer (not the views!). Then open the Item Details page and go to Settings. The Enable Sync capability is inside the Feature Layer (hosted) section. Do not forget to hit Save after you check Sync.

 

 

Enabling the Sync capability will automatically create and index GlobalId fields in your feature layer and supportsApplyEditsWithGloablIDs  will switch to true. Once you have enabled sync, you can turn it off.  The Sync capability will not have a negative performance impact on your feature layer, but you will not be able to disable queries in your layer if Sync is enabled.  This is one of the main reasons why you may want to keep Sync disabled.

 

If your feature service has attachments and/or relationship classes: In this case, we need to overwrite your feature service with a geodatabse schema that includes one uniquely indexed GlobalID field per every layer and table in your service.Additionally, all attachment relationships must be based on GlobalID fields..  The following steps illustrate how to do this, without losing any data you may already have.

 

  1. In ArcGIS  or your portal in ArcGIS Enterprise, navigate to the Page Details of your Form and click on the Form Layer to open the Feature Layer behind your Form.
  2. Download your Feature Layer data in File Geodatabase format and add the entire contents of the File Geodatabase into ArcGIS Pro.
  3. In ArcGIS Pro, run the Add Global IDs geoprocessing tool on all layers and tables in your File Geodatabase.
  4. In ArcGIS Pro, run the Migrate Relationship Class geopocessing tool against attachment relationship classes in your File Geodatabase.
  5. In ArcGIS Pro, run the Disable Editor Tracking geoprocessing tool against your File Geodatabase data.
  6. In ArcGIS Pro, set all the Editor Tracking fields in your File Geodatabase to "Read Only" using the Design/Fields view as shown in the next animation.
  7. Overwrite your Form Feature service using the Share/Web Layer/Overwrite Web Layer option in ArcGIS Pro.
  8. In your portal in ArcGIS Online or ArcGIS Enterprise, Enable Editor Tracking (in the Setting Dialog of your feature service as shown in the next screenshot) in the Form's Feature Layer.

 

 

Make sure you enable Keep Track of who created and last updated features. Do not get confused with the Keep track of created and updated features.

 

Working with Non-Hosted Feature Layers in ArcGIS  Enterprise

 

For ArcGIS Enterprise, there are some situations where supportsApplyEditsWithGloablIDs cannot be set to true in a Feature Service. This is the case, for example, when your Feature Service works on top of versioned data or tables not registered in a geodatabase. Installing Survey123 2.9 (Classic) would be the only solution possible unless you unversion your data or move your data into a non-versioned geodatabase feature layer.

 

Other than the exceptions above, here are steps to enable supportsApplyEditsWithGloablIDs in ArcGIS Enterprise for non-hosted feature services:

 

  1. Add all layers and tables included in your Feature Service into an ArcGIS Pro session.
  2. In ArcGIS Pro, run the Add Global IDs geoprocessing tool on all layers and tables included in your Feature Service.  It is very important that the new GlobalID fields are indexed using a unique constraint.
  3. If your feature service includes attachments: In ArcGIS Pro, run the Migrate Relationship Class geopocessing tool against attachment relationship classes included in your Feature Service.
  4. Overwrite your existing feature service to ensure that added GlobalID fields are now exposed through your Feature Service, by making them visible.

 

If after doing all the above, you still cannot see that supportsApplyEditsWithGloablIDs is enabled, then you can try the following:

 

  1. Overwrite your service definition ensuring this time that the sync capability is enabled.
  2. Enable archiving in your layers and overwrite your service definition.

 

Technically, Archiving and Sync are NOT required but they will ensure all your GlobalID fields are properly indexed.  Once supportsApplyEditsWithGloablIDs has been switched to true, you should be able to disable archiving and sync if you like.

Please note that while sync will not cause any performance degradation or overhead on your feature service, archiving might.  If sync is enabled, you will not be able to disable queries in your feature layer.

Survey123 provides great support for working with USNG and MGRS coordinates. Since this is quite important to a number of you I thought I would write a specific blog post detailing the basics, but also some more advanced techniques.

 

About USNG and MGRS

 

USNG and MGRS are two commonly used grid-based reference systems used to unambiguously express geographic locations. They provide definitive advantages over using latitude/longitude coordinate notations, and addresses, so they have become the standard among different communities. MGRS for example is the NATO standard for referencing locations on the earth and it is often used by Emergency Response teams across the world.  USNG, which practically uses the same notation as MGRS, is widely used by Seach and Rescue and Emergency Response teams in the United States.  In fact, through  Directive 092-5, FEMA sets the United States National Grid (USNG) as its standard geographic reference system for land based operations and encourages the use of USNG among community partners

 

Unlike the different notations used to express coordinates through a latitude and longitude pair (DMS, DDM, DD...), USNG and MGRS provide a unequivocal and more user friendly way to denote a location.  The following table illustrates differences between a few common notations:

 

Map coordinate notationExample
Degrees, minutes and seconds (DMS)41°24'12.2"N 2°10'26.5"E
Degrees and decimal minutes (DDM)41 24.2028, 2 10.4418
Decimal degrees (DD)40.446° N 79.982° W
MGRS11SMT818846858
USNG11S MT 8188 6858

 

The fundamental issue with DMS, DDM and DD notations is that they are more difficult to read and people can transcribe the coordinates in slightly different ways which ultimate can lead to confusion. It may not be obvious to untrained field staff what the difference is between Decimal degrees and Degrees and decimal minutes. People may swap the order of the latitude and longitude values etc  In that sense, while MGRS and USNG may be just as cryptic at first to the untrained eye, they reduce the chances of getting the location wrong. It really does not matter where you put the spaces in USNG or MGRS, and there is no chance to flip latitudes and longitudes around... if you transcribe all the characters in order, you get the intended location right.

 

For the reasons above and more, organizations are choosing MGRS and USNG as a common location language  and want applications like Survey123 to work naturally with them.

 

Lets explore first how field users of the Survey123 field app can get the coordinates of a particular location. This is achieved through geopoint questions in the form, which support MGRS/USNG coordinate readouts in both the map preview and detailed modes.

 

Reading and configuring coordinate formats in geopoint map previews

 

Geopoint questions in your form will always display the coordinates of the selected location as well as a map in preview mode.

 

In the survey shown on the side, for example, the current location of the device is shown in USNG notation, along with the estimated horizontal accuracy.

 

The coordinate format to be shown in the map preview is configurable by the author of the survey as follows:

 

  1. Open your survey in Survey123 Connect for ArcGIS
  2. Once you are previewing your survey, go into the Settings tab
  3. Select the Map section
  4. Choose the coordinate format for the Preview
  5. Publish your survey and download into the Survey123 field app to test

 

The available coordinate formats are:

 

  • DMS: Degrees Minutes Seconds
  • DDM: Degrees Decimal Minutes
  • DD: Decimal Degrees
  • MGRS
  • USNG
  • UTM/UPS

 

Once the coordinate format has been selected in Survey123 Connect, it will apply to all geopoint questions present in that survey. End users cannot overwrite the coordinate format chosen by the author of the survey.

 

Being able to quickly read a geopoint location in USNG or MGRS coordinates from the map preview in your survey can be very useful. For example, a Search and Rescue team that needs to communicate its own location or the location of an event over the radio can read the coordinates directly from the map preview.

 

Reading and configuring map coordinates in the map detail modeDynamic coordinate readout in Survey123 map detail view

 

The map preview as described above is intended to give the field user quick access to visualize a selected location and its coordinates.  By tapping on the map preview, Survey123 will bring the map into full screen, or detailed mode, and switch into interactive mode.

 

When the Survey123 map is expanded to full screen, the map coordinate display is at the bottom. Note that the coordinates change as the map is panned around. For example, you can use the geosearch to find an address and immediately get the MGRS coordinates.  Or you can refresh your location using the device's GPS and get the coordinates again.

 

If you would like to copy the coordinate readout into your clipboard, you can tap the bottom panel and that will switch the geosearch control at the top to map coordinate entry. Note again that in this mode, as you pan the map the coordinates will change dynamically in the geosearch control, from which you can easily copy them into your clipboard.

 

The coordinate format for the detailed map is also controlled from Survey123 Connect as described in the previous section.

 

 

 

 

Entering coordinates through geosearch using USNG and MGRS notation

 

A second workflow when using the Survey123 app is that where the field user needs to define the location of an event, asset or observation, by entering its coordinates.This is done through the geosearch input in the detailed map view (map at full screen) of a geopoint question.  The geosearch input automatically accepts map coordinates in a number of formats: DMS, DDM, USNG, MGRS. Simply type in or paste the map coordinates and the map location will be set. 

 

Persisting USNG and MGRS coordinates as GIS attributes

 

Through the use of calculations, a survey author can configure a form to automatically persist geopoint questions in different map coordinate formats.  This is achieved through the XLSForm calculation column, which can take a geopoint object and extract its coordinates in USNG and MGRS for example.  This is what the syntax of the calculation will look like:

 

 

typenamelabelcalculation
geopointlocationLocation
textusngUSNGpulldata("@geopoint",${location},"USNG")
hiddenmgrsMGRSpulldata("@geopoint",${location},"MGRS")

 

In the example above, the pulldata"@geopoint") function is used in the calculation column. Note that we first pass the question holding the geopoint object, which in our case is location,and then we indicate the property from the geopoint that we want to extract: USNG or MGRS.

 

The expression in the calculation column is evaluated every time the location changes. So for example, if the user is in map preview mode and hits the GPS button, then the location is recalculated and with it its coordinates in the usng and mgrs questions.  The location could also change when the user manually sets a new location through the map detailed view, either by passing an address, a coordinate pair or simply panning the map.

 

Note that in the example below I used a text type of question for the USNG coordinates.This means that the USNG coordinates will be displayed in the form to the end user. If you use a text type of question, you may want to flag the question as read-only, so users do not overwrite the coordinates.  In the case of MGRS, I choose hidden as the type, because I wanted to keep the calculation hidden from the end user of the survey, but still have this information be submitted as a GIS attribute to the ArcGIS feature layer.

 

When using the pulldata("@geopoint") function you can control the precision of the coordinates you will get back. In the example I provide above, no precision parameter is passed. When no precision is set, the default precision for MGRS is 1 meter, and for USNG is 10 meters.

 

For clarity, this is what USNG coordinates at different precisions will look like:

 

11SGZD and 100 km Grid Square ID, precision level 100 km
11S MS 8 1precision level 10 km
11S MS 85 18precision level 1 km
11S MS 851 184precision level 100 m
11S MS 8513 1846precision level 10 m
11S MS 85138 18466precision level 1m

 

When working on WGS84 and NAD83, MGRS and USNG are the same, although the notation for USNG typically  includes spaces in between the Grid designator, 100K meter grid and Northing and Easting.

 

In the following example, I am passing a precision parameter with a value of 100, to get a 100 meter MGRS grid. I could have passed a value of 1, to get a 1 meter MGRS grid, or 0.1 to get a 10 cm grid.

 

pulldata("@geopoint",${location},"MGRS",100)

 

The pulldata("@geopoint") function supports many other properties as described in our Geopoints—Survey123 for ArcGIS | ArcGIS help topic.

 

More on MGRS and USNG in ArcGIS

 

There are a number of additional utilities within ArcGIS that will help you work with MGRS and USNG.

 

Survey123 version 3.0 has introduced both geosearching and reverse geocoding functionalities, to allow users to both search for street addresses and places of interest when capturing a location, as well as to retrieve the location of a point already selected. Making full use of reverse geocoding can be difficult, though, and we wanted to make sure people could make the fullest use of it right out the gate. So this blog post will describe everything about the new reverse geocoding functionality that we can, so that you can hit the ground running with it!

 

Reverse geocoding can be performed in the field app by pressing and holding on the map or coordinates when the full geopoint view is opened, but this is only for confirming the location when it’s being captured; the full geocoded description of the location isn’t saved and submitted to the survey. However, the reverse geocoded value can be obtained from the geopoint and inserted into a field in your survey using pulldata("@geopoint",${location},"reversegeocode"), which returns the location as a JSON object that looks something like the following:

 

{
        "address":{
               "Match_addr":"570 St Kilda Rd, Melbourne, Victoria, 3004",
               "LongLabel":"570 St Kilda Rd, Melbourne, Victoria, 3004, AUS",
               "ShortLabel":"570 St Kilda Rd",
               "Addr_type":"PointAddress",
               "Type":"",
               "PlaceName":"",
               "AddNum":"570",
               "Address":"570 St Kilda Rd",        "Block":"",
               "Sector":"",
               "Neighborhood":"Melbourne",
               "District":"",
               "City":"Melbourne",
               "MetroArea":"",
               "Subregion":"",
               "Region":"Victoria",
               "Territory":"",
               "Postal":"3004",
               "PostalExt":"",
               "CountryCode":"AUS"
               },
        "location":{
               "x":144.97914150000003,
               "y":-37.847384999999996,
               "spatialReference":{
                       "wkid":4326,
                       "latestWkid":4326
               }
        }
}

 

 

Please note that this blog post uses the ArcGIS World Geocoder for our examples, so be aware that other locators won’t produce exactly the same contents. Also know that, when using these reverse geocoding expressions, ArcGIS credits will be consumed if you're using the ArcGIS World Geocoder.

 

Individual properties from the object can be extracted by providing the name of the property alongside reversegeocode, separated by periods. These properties themselves differ depending on the locator used, but the format always remains the same. This example would return only the “Match_addr” property seen in the JSON object above.

 

pulldata("@geopoint",${location},"reversegeocode.address.Match_addr")

 

The default locator service for your organization will be used when reverse geocoding. To use a different locator service, enter the locator URL as an optional parameter into the function with the format pulldata("@geopoint",${location},"reversegeocode",${locatorURL}). If the service is secured, a proxy item must be configured with access credentials saved in it. For more information, see Requirements for configuring your own locators for ArcGIS Online, or Configure utility services with your portal for ArcGIS Enterprise.

 

If a locator URL is provided, additional parameters can be provided that will be passed to the URL. As with the properties provided within the JSON object, these parameters differ depending on the locator service used. This example uses the featureTypes parameter, which limits the value returned to a specific type of location, to return only the nearest business or landmark.

 

pulldata("@geopoint",${location},"reversegeocode.address.Match_addr","https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer","featureTypes=" + "POI")

 

Usually, the ArcGIS World Geocoder has two required parameters that you also need to pass through the URL: location and token. These are provided automatically by Survey123, however; you don’t need to do anything about these.

 

There’s a few other useful parameters you can use with the ArcGIS World Geocoder:

 

  • langCode can be used to set the language reverse-geocoded addresses are returned in, for countries that have multiple languages available. Remember to define only a two-digit locale code, rather than a full language name.
  • locationType specifies whether PointAddress geometry is placed on the rooftop or street entrance of the location. If this parameter isn’t provided, it defaults to street.
  • forStorage is automatically passed to the geocoder by the Survey123 app, and is used to allow the result to persist. While usually an optional parameter, in the case of Survey123 it’s treated in the same way as compulsory parameters.

 

For more information on reverse geocoding URL parameters, including a full list of parameters that can be passed to the URL, see the ArcGIS REST API's documentation on the reverseGeocode operation.

 

You can include multiple reverse geocoding calculations without an impact on performance or credits. As an example, these three calls for individual properties could all be included:

 

pulldata("@geopoint",${location},"reversegeocode.address.Match_addr")

pulldata("@geopoint",${location},"reversegeocode.address.LongLabel")

pulldata("@geopoint",${location},"reversegeocode.address.ShortLabel")

 

A reverse geocode will be performed for the first calculation, which would consume credits. After this, the response is cached, and used for the other two calculations. A new call to the geoservice is only required if the reverse geocode request URL has changed, either due to a change in location, using a different request parameter, or the original access token expiring.

 

Hopefully, this blog helps you implement reverse geocoding into your own surveys. If you have any other questions or issues about reverse geocoding, feel free to leave them in the comments below, or bring them to the Survey123 booth at the UC!

The festival of San Fermin is a historically rooted celebration held annually in the city of Pamplona, Spain. Since Ernest Hemingway chose San Fermin to be the plot of The Sun Also Rises, this festival has become the most internationally renowned fiesta in Spain. The festival involves traditional and folkloric events being the encierro, or running of the bulls, the most popular. Since the festival takes place for an entire week, a total of 7 encierros are held. You still can make it to the first one: 7th of July at 8:00am. If you can't, encierros will continue for 6 more days in a row.

 

Our 3.0 release is loaded with many fixes, enhancements and new features. Here are the highlights for what is new.

 

Survey123 Website

 

Through the Survey123 website you can design, manage, secure and analyze the result of your surveys. This update includes a number of important enhancements.

 

Workflow automation with webhooks: Version 3.0 is the first release of Survey123 with official support for webhooks.  It may take some experimentation to understand how to best take advantage of them, but no doubt many of you will find this feature very useful.

 

Our intent adding support for webhooks is to facilitate a number of common workflows such as:

 

  • Instant Notifications (SMS, e-mail, push notifications):
    • Notify a team supervisor via e-mail whenever a survey inspection form is submitted.
    • Send an SMS message to an emergency team leader when a high priority incident is reported.
  • Instant Data Transfer (Box, Office 365, Google Drive, Box, SalesForce Pardot)

    • Automatically add a new row in an Office 365 Excel worksheet with responses from submitted surveys
    • Associate customer satisfaction survey responses with prospects in SalesForce Pardot
  • Other integrations:
    • Create a calendar event when a new Inspection is scheduled from Survey123
    • Register a new PayPal payment when a new City Code violation is reported
    • Invoke my own web service when a new survey is submitted

 

Webhooks are configured through a new Survey Settings tab added to the Survey123 website and work with both the Survey123 web app as well as the Survey123 field app. For more details you can check our Webhooks—Survey123 for ArcGIS | ArcGIS  help topic. A specific blog post on this topic will be shared with details about how to use webhooks with Survey123.

 

Group Questions in Web Designer: Groups have always been a popular feature in Survey123 Connect, and now you can also take advantage of them in Web Designer.  Groups are useful to break-down long surveys into logical sections, helping end-users navigate your forms more easily.  Groups are also very handy when you want to hide or show entire sections of your survey. Instead of setting conditional visibility on every question independently, you can create a group, and then apply the visibility rule to the entire group; this is easier to manage, and faster to execute.

 

Working with Groups in Web Designer is straight-forward: Add a Group to your survey and then drag questions into it. Just as shown in this animation:

 

 

File Upload questions added to Web Designer: The File Upload question type allows end-users to attach documents, images and other supported file types into your survey. As a survey author you can control exactly what type of file end-users will be allowed to upload.  Uploaded files will be stored as geodatabase attachments in your ArcGIS Feature Service.

File Upload questions are only supported in the Survey123 web app and file sizes are limited to 10Mb.

Filters in the Survey Data tab: The Data tab in the Survey123 website lets you explore individual records submitted to your survey. In this update, you can now filter survey response easily. The new filtering option allows you to define expressions with one or more criteria.  In the animation below, for example, a filter is applied to a Polio Vaccination survey to display only households within the governorate of Babylon where the family type has been classified as refugee.

 

 

 

A good amount of effort went into allowing you to apply filters in different ways. It is worth exploring the filtering options with different surveys so you can see the type of things you can do. For example, if your survey contains photos, you can filter survey responses where photos have been included, or where photos are larger than a particular size. You can also filter records created by a particular contributor, select all records within a specific map extent, or filter records where free text questions include more than 200 characters etc  

 

The new filtering options in the Data tab are definitively a great way to effectively drill down into your survey results.  As records in your table and map get narrowed down, you can easily click on them to open the survey individual response dialog and inspect all data submitted with each survey in detail. Your filters will also be honored by the export tools and as described below, you can also feed Feature Reports with selections generated through filters.

 

Enhancements to Feature Reports. Bulk operations and Conditional Template Syntax (Beta): Survey123 lets you create high quality printable reports for data submitted into your surveys. You can define the content, layout and look & feel of your reports by uploading your own Microsoft Word based templates into Survey123. For more details about this capability, check our Print survey results—Survey123 for ArcGIS | ArcGIS  help topic.  In this release, we are adding two important new features: Bulk reports and Conditional Template Syntax.

 

Bulk Reports: You can now select multiple survey records and apply a template to them to create many reports at once.  At the moment, we are limiting bulk operations to 30 reports (30 selected records). The following animation illustrates how to access the new bulk report capabilities.

 

 

The output of a bulk report operation is a compressed file in .zip format containing one document for every record you selected. The .zip file will be stored by default into your ArcGIS  account within a folder of your choice. If you wait until the bulk report finishes, we will automatically download the results automatically. Closing your browser while the job is executing is fair game too, because you can always go back to the Data tab of your survey to have access to the last 10 bulk report jobs you submitted. Your outputs will also be kept in your ArcGIS account.

 

While in Beta, creating bulk reports is free, although we anticipate that once we move into general release bulk reports will consume ArcGIS  credits.  We are also working on lifting the limit of 30 records, so you can create as many reports as you want in bulk.

 

We additionally are looking into supporting various destinations for your output reports such as Box, Google Drive and Office 365 One Drive.

 

Conditional Syntax for Feature Report Templates: Another important enhancement to Feature Reports is support for conditional statements within your custom templates.  Just as you can set rules that control the visibility of questions within a survey, you can also insert expressions within your Microsoft Word Custom Report Template to define if particular sections of your report will be shown or not.  Feature Report Templates are essentially Microsoft Word documents including certain keywords matching questions in your survey.  Our Feature Report Template service simply replaces your keywords with data (numbers, text, photos, maps, signatures...).  The exact Feature Report Template syntax is described in our Print survey results—Survey123 for ArcGIS | ArcGIS  help topic. Look for the Conditional Statements section for details.

 

In short, here what a conditional statement looks like:

 

${if expression} Section of your report to be shown or hidden  ${/}

 

For example, the following statement will include the photo, map and comments of an incident in your report only if the incident is high priority:

 

${if priority=="High"}
  Comments: ${comments}
  Photo:
${image1|size:300:0}
  Map:
${Location | mapSettings:"":50000}
${/}

You can add any content in between your opening ${if expression} and the ${/} closing statement. For example, you can add Microsoft Word tables to organize your content, fixed images, paragraphs etc.

 

With the addition of conditional statements you can now author more professional looking reports.

 

While we originally intended to launch a General Release of the Feature Report capability with 3.0, we estimate that we still need about two more updates to finish up some remaining work.  That would push the release to around November 2018. In the meantime, we would appreciate your feedback so we can evolve this feature to your needs.

 

Survey123 Web App Version Dialog: You can now control what version of the Survey123 web app will be used when rendering your survey. This is an important consideration: If you configure your survey to use the latest available version of the Survey123 web app, any enhancements and bug fixes in product updates will automatically be applied to your survey. While this sounds awesome at first, using the latest version also comes with its own risks:  New versions may introduce undesired changes, and in the worst-case scenario even break your survey. We always aim to maintain backwards compatibility, but this new setting gives you ultimate control.

 

For production surveys, my recommendation is that you lock the version of the Survey123 web app. This means that your survey will be rendered using the same Survey123 web app version used to publish the survey. An additional benefit of version-locking is that it reduces the initial loading time of the form in the user’s web browser.

 

Survey123 for ArcGIS Web App Version Setting

 

If you want to incorporate functionality in newer releases into your survey safely, or simply try the latest version to see if it is worth upgrading, all you need to do is to create a copy (save as) of your survey and publish it to try things out. If all works well with your test survey you can go back to the production survey and hit Publish on it.  When you publish a survey, it gets upgraded to the latest version and version-locking is enabled.

 

Tip: If you authored your survey in Web Designer, you can easily test your surveys in the latest version by simply using the Preview option within Web Designer.

 

By default, all surveys published prior to version 3.0 are automatically rendered using the latest version of the Survey123 web app. That is, pre-3.0 surveys are not version-locked by default. Any survey published with 3.0 or newer, will be versioned-locked by default.  Again, you are free to adjust this setting as you see fit.

 

Other enhancements and fixes:

 

  • BUG-000108450 The Survey123 for ArcGIS website (survey123.arcgis.com) does not restrict content viewing on Analyze tab despite having the proper Editor settings configured in ArcGIS .
  • BUG-000113476 Questions stacked when 'Other' is selected as a choice
  • When looking at images through the Analyze tab in the Survey123 website, you can now reference back to the original survey individual response.
  • The map in the Data tab now includes a basemap switcher
  • Added support for map coordinate format calculations (more on this later in this blog post).
  • Various usability and cosmetic enhancements in pages and groups.

 

Survey123 Field App and Survey123 Connect

 

You can download the latest version of the Survey123 field app (build number 3.0.132)  from the Apple, Google Play and Amazon stores. The Windows, Mac and Ubuntu Linux flavors of the app are available from our Survey123 for ArcGIS | ArcGIS Download page.Through the Download page you can also access build 3.0.127 of Survey123 Connect.

 

Version 3.0 of the Survey123 field app and Connect comes with some serious architectural changes which cause incompatibilities with some older operating systems, versions and configurations of ArcGIS:

 

  • Apple's iOS: After many previous announcements, Apple has moved definitively away from 32-bit apps. To keep Survey123 running well on the latest hardware and operating systems from Apple, and to comply with Apple's requirements for apps in their store, version 3.0 of Survey123 no longer runs on 32-bit.   This means that 3.0 will no longer be available in older Apple devices such as iPhone 5C (iPhone 5S is fine because it carries a 64-bit chip) and iPad 4.
  • Android OS: In preparation for Survey123 to support Mobile Map Packages and Vector Tiles in an upcoming release, our 3.0 architecture is only supported in Android 4.4 or newer.
  • Portal for ArcGIS: Survey123 3.0 does not run against versions of Portal for ArcGIS older than 10.4. Portal for ArcGIS 10.3.1 is no longer supported. This is because Portal 10.3.1 does not support certain REST API operations (supportsApplyEditsWithGlobalIds in the applyEdits operation) required to support nested repeats and improved data integrity through transaction-based rollback operations.
  • Feature Layers and supportsApplyEditsWithGlobalIds: Starting with version 3.0 you will no longer be able to submit surveys or publish/republish a survey against a feature service that does not have the supportsApplyEditsWithGlobalIds property set to true. While this requirement is not new, we previously only enforced it for surveys with repeats. It is therefore possible that your existing ArcGIS  or ArcGIS Enterprise feature services don’t have this capability– so please check them to ensure that they will work when you update. The easiest way to enable this property is to simply enable the sync capability (Synchronization) on your feature service. Please follow instructions in the Allow offline editing or collaboration section of the Manage hosted feature layers—ArcGIS  Help | ArcGIS help topic for details on how to enable the sync capability.  If working with ArcGIS Server, remember that you cannot turn on sync if your data is versioned or if your layer lacks an indexed GlobalID field.

 

Survey123 Classic (aka 2.9): If for any reason you cannot comply with all the requirements above, we have made available a version of Survey123 which we will call Survey123 Classic and tag with a 2.9 build number. It preserves the pre 3.0 architecture and as such works with 32-bit devices, older iOS and Android operating systems and against Portal 10.3.1 and feature services without sync enabled.  Survey123 Classic is available for Android users (in the Google Play store) as well as on Windows, Mac and Ubuntu through our Download Page. We did our best to get Survey123 Classic into the Apple store, but Apple has not approved its publication at this time.

 

Survey123 Classic Download Page

 

Survey123 Classic is a temporary measure. We have no plans to update or apply fixes to Survey123 Classic. From a functional perspective, Survey123 Classic is equivalent to Survey123 version 2.8, so any feature announced here for version 3.0 does not apply to Survey123 Classic.

 

New Time Control in Survey123

Ok, so lets describe next what is new in this update:

 

Enhanced Time Control UX: The Survey123 app now features a much improved time user control. This control is used in dateTime and time questions and provides a better user experience for users in the field.   Capturing the time when a business opens and closes, when a hydrant was flushed or an asset was inspected... there are many scenarios where you may want to provide a quick experience for capturing time.

 

Setting the time can be done easily through a touch experience, but you can also type the time.

 

The time control supports both AM/M and Military time formats. The configuration of the device is used to determine the time format to be used by the control.

 

As with any usability enhancement, it is hard to describe in words, but based on long hours of testing and feedback provided though our Early Adopters, I anticipate that you will be much more content with this new time control.

 

 

Nested Repeats: As its name implies, nested repeats allow you to include repeats within repeats. Up until version 3.0, you could add multiple repeats to a survey, but they could not be nested.  This was somewhat limiting. For example, you could author a survey to capture:

 

  • A building with multiple households (each household would be a record in the repeat), or
  • A household that contains multiple people (each person would be a record in the repeat)
       

But now at 3.0 your survey can contain both:

 

  • A building with multiple households (each household would be a record in the repeat), and
  • A household that contains multiple people (each person would be a record in the repeat)

 

Technically, there is no limit to the number of repeats that you can nest, however if the number of nested repeats gets too large then things might get a bit busy from a UI perspective.

 

We have added a new Nested Repeats sample in Survey123 Connect so you can more easily see how to work with nested repeats. I recommend that you take a look at it. This sample also showcases the use of XLSForm aggregation functions  across repeats to sum, average or simply count repeated records.

 

Smart Sketching on Maps: We introduced smart sketching on top of photos and images some time ago as described in the Smart Sketching in Survey123: Stroke by stroke. blog post. In this update we added the option to sketch on top of a map. Essentially, end users can now take a screenshot of a map, and then sketch on top. Sketching on maps is useful in some workflows where you need to quickly annotate a map to highlight relevant facts. The sketching tools are optimized to add text and arrows, which are about the most common things most sketching workflows require.

 

As usual, the sketch will be stored as an attachment. There is nothing you need to do to enable smart sketching on maps. If your survey already includes smart sketching questions, the new option to annotate maps will come automatically.

 

 

 

 


Geosearch: While we have had geosearch in the map control of the Survey123 web app for quite some time, we did not have it in the Survey123 field app. That is history with version 3.0.  The geosearch control is only available when the map is shown at full screen. The map preview in your survey will not provide an option to run a geosearch, but if you tap in the map to set its location manually, it will. 

 

The geosearch input accepts coordinates in different formats (Degrees Minutes Seconds, Degrees and Decimal Minutes, USNG and MGRS coordinates....). End users can also type a placename or address and a list of candidates sorted by distance from the device's location will be presented. 

 

By default, geosearch uses the locators that have been configured in the ArcGIS Organization.   As is commonplace through other geosearch inputs in ArcGIS (Web AppBuilder, Web Map Viewer etc), the end user can also explicitly define the locator to be used in the event that multiple locators have been configured in the ArcGIS organization.

 

 

 

The use of locators through geosearch is only available while . If the device is offline, geosearch will only accept coordinates

 

Other enhancements and fixes:

 

  • BUG-000114023: In Survey123 for ArcGIS, the contrast between the color of the asterisk used for required fields and the background color does not meet the 508 compliance for all font sizes.
  • BUG-000113272 Survey does not pass Global and Object IDs when pushing Template Survey from Survey123 to Portal for ArcGIS.
  • BUG-000113639 In Survey123 for ArcGIS, when a geopoint appears due to a relevant statement within a repeat, the values entered are carried into the rest of the repeats but no data is submitted.
  • BUG-000112961 In Survey123 Connect, clicking "Manage in Survey123" website launches the Survey123 website that was last accessed in the browser, and does not respect the Portal settings in Survey123 Connect.
    BUG-000109845
    copy the sent data to a new survey>sends updates from Sent->Repeat instead of Adding it overwrites.
  • BUG-000112374 The word "administrator" is misspelled in the message that appears when a User signs into the Survey123 App and goes to the "Download Surveys" section but has no surveys shared with them.
  • BUG-000108893 Using Survey123 for ArcGIS field app, if a survey is taken while Offline, then the device is switched to , pending surveys in the Outbox will fail to send with Code 0.
  • BUG-000108940 Survey123 for ArcGIS, default values are not honored in Repeats with a set repeat count when a Calculation is also present within the Repeat.
  • BUG-000106662 Windows 10 Lumia phones do not recognize the Survey123 for ArcGIS app when launching the app with a direct link.
  • BUG-000106467 The Survey123 Connect for ArcGIS splash screen is in English, when installed on a German OS with German language settings.
  • BUG-000106468 The Survey123 for ArcGIS field app splash screen is in English, when installed on a German OS with German language settings.
  • BUG-000107010 When fields are passed from a feature service to Survey123 for ArcGIS survey through custom URL scheme, URL encoding is not decoded in final survey result.
  • BUG-000105814 Publishing a survey in Survey123 Connect for ArcGIS to Portal for ArcGIS configured to use Integrated Windows Authentication (IWA) will fail to publish by getting hung on the "creating form item" step.
    BUG-000105387
    Survey123 for ArcGIS and Survey123 for ArcGIS Connect applications crash on Windows Server 2012 R2.
  • BUG-000104637 When publishing a survey to ArcGIS  from Survey123 Connect on a Windows 7 machine, Survey123 Connect crashes, returning a 1000 error pointing to AppStudio-WindowsLocation7.dll in the application log.
  • BUG-000098349 In Survey123 for ArcGIS, sending a survey fails with code 1003 error if the form contains two repeat blocks and if one of them contain a geopoint question.
  • BUG-000095830 Default values in Hidden fields.
  • BUG-000107478 Special characters are displayed incorrectly in the Survey123 for ArcGIS app when supplied from a web map.
  • BUG-000108785 Opening surveys submitted from Survey123 Connect for ArcGIS to the survey123.arcgis.com website configured with Portal for ArcGIS fail with the error: "Surveys published by Survey123 Connect for ArcGIS are currently not supported". This is only reproducible in a portal configured with Integrated Windows Authentication (IWA).
  • BUG-000114225 Report generated from the Survey123 for ArcGIS website shows incorrect time.
  • ENH-000106924 Add more coordinate entry formats for Survey123 (specifically USNG).
  • ENH-000105785 Allow for repeats within a repeat in Survey123 for ArcGIS app (nested repeats).
  • ENH-000105167 Add the ability to collect coordinates in UTM or conduct a transformation within Survey123.
  • ENH-000107426 Encrypt the refresh token used in Survey123 for ArcGIS app.
  • ENH-000104695 Provide the ability to email an email address which was captured from a survey form when the survey is submitted.
  • ENH-000105588 Using Survey123 for ArcGIS Connect, applying a calculation to a question that is taking the value of a following question (which contains a default value) will not be retained after modifying the value containing the calculation when sending to draft.

 

Enhancements to XLSForm support

 

XLSForm is a form standard created to help simplify the authoring of forms in Excel. Survey123 follows the XLSForm specification and in some cases extends it. In this section I will anticipate some important new XLSForm features for which we have added support, although separate upcoming blogs will cover in detail some of them:

 

Expressions in required and readonly XLSForm columns: The required and readonly XLSForm columns now accept expressions. Before version 3.0 you could flag questions as required or readonly, now you can write expressions to dynamically turn these two properties based on responses in your form.

 

Reverse geocoding and map coordinate transformations: The pulldata() function has been significantly enhanced by adding extra properties into its pulldata("@geopoint") variation.  Starting with version 3.0, you can perform reverse geocoding on an existing geopoint and also perform map coordinate format transformations. 

 

  • Reverse geocoding is very handy when you want to precompute the address of a location, its postal code etc.   Using reverse geocoding against your own custom asset locator, you can also precompute the unique identifier of an asset based on the user's location.   This is a very relevant enhancement that will boost the productivity of field users and help with user input validation. An upcoming blog will describe in more detail how to perform reverse geocoding with Survey123.  If you want to get into it right away, you can also try the new Reverse Geocoding sample included in Survey123 Connect for ArcGIS or learn more through the Reverse Geocoding section in our Geopoints—Survey123 for ArcGIS | ArcGIS help topic.   As of version 3.0, reverse geocoding is only supported in the Survey123 field app, but our Survey123 web app will work with it in our next update.
  • Map Coordinate Transformations: A new extension to the pulldata function lets you extract MGRS, USNG and other common map coordinate formats from a geopoint. This is useful when you want to persist the coordinates of an event as a GIS attribute, using different coordinate notations.  For example, the Search and Rescue community often use coordinates expressed in USNG format, MGRS is a widely accepted standard for military use and UTM coordinates are used globally.  We will describe all of this in more detail in a separate blog, although you also have a great Survey Sample in Survey123 Connect and a complete section called Map Coordinate Formats in our  Geopoints—Survey123 for ArcGIS | ArcGIS help topic. Map coordinate transformations are supported in both the Survey123 Web and Field apps and work while  and offline.

 

Updated source code in AppStudio for ArcGIS

 

The source code of Survey123 version 3.0 and 2.8 is now available with the latest version of AppStudio for ArcGIS. Use the description in the template to figure out which one is which.

 

 

 

Congratulations if you made it this far. Definitively, a lot of work in this update. Enjoy!