Select to view content in your preferred language

Survey123 - Multiple choice selections as separate entries not comma separated list

01-30-2022 04:24 PM
Status: Open
Labels (1)
New Contributor III

Currently, if a user selects multiple options in a multiple choice list, this will result in a comma separated list of all selected options. This does not work well when presenting the results in a dashboard. Preferably, all the selected options would be added separately and therefore present more cleanly in a dashboard.


You can either have 1 field with comma separated values or use a repeat and have multiple rows.  Where would the data go otherwise in the database schema?

Data Expressions should be able to do what you want.  This one has a example just like you want 


If you're working with a dashboard i'm sure it's possible to use an Arcade expression with something like a split function to return the seperated data as you need. 


Idea: In your Survey123 design, you can add hidden fields (one for each option in your list) to keep track of which choices were selected. The technique is described in this blog:

Check the selected(question, value) section


@ZoevdbAT You can do this with Survey123 Connect, but not with the web app. Unfortunately we do not have access to Connect. 


@IsmaelChivite Thanks Ismael, unfortunately though I don 't have access to Connect. I was hoping something similar could be an option for the web version of Survey123. 


@JessicaRouns I'm sorry I meant define the expression in the ArcGIS Dashboard itself. If you load in data you can use a data expression which uses Arcade. 



I have a problem with using data expression.  Actually I do not have experience with coding

I have copied the code that mentioned in this post " "

But it gives error

I have modified the 'Report_road_condition' with name of my multiple choice question.  but I am not sure what to use instead of 'd10b9e8dbd7f4cccbd0a938a06c586e9'.


Thanks in advance


 // Reference layer using the FeatureSetByPortalItem() function.
var fs = FeatureSetByPortalItem(Portal(''), 'd10b9e8dbd7f4cccbd0a938a06c586e9' , 0, ['Report_road_condition'], false);


The 'd10b9e8dbd7f4cccbd0a938a06c586e9 part should be whatever the ItemID is of your service in AGOL.  Just go to the page of the service in AGOL then at the top in the URL you will see your ItemID.  It is a universal number to find things in AGOL.

Hope that makes sense.