Survey123 choice_filter using static string on cascading select_multiple

833
1
02-21-2019 10:11 AM
ChrisBlinn1
Occasional Contributor

I would like to improve on how I use choice filters containing many choice values.  Currently if I have choices that need to be available for more than one choice, I simply replicate the choice line and change the choice_filter value.

Example.

typenamelabelchoice_filter
select_multiple datagroupsel_datagroupSelect all datasets you manage:
begin_groupgroup_addresspointsAddress Point information:
select_multiple qaqcsel_ap_qaqcSelect the QA/QC procedures you currently use:datagroup=selected(${sel_datagroup},name)
end_group
begin_groupgroup_centerlinesCenterline information:
select_multiple qaqcsel_c_qaqcSelect the QA/QC procedures you currently use:datagroup=selected(${sel_datagroup},name)
end_group
begin_groupgroup_taxparcelsTax Parcel information:
select_multiple qaqcsel_tp_qaqcSelect the QA/QC procedures you currently use:datagroup=selected(${sel_datagroup},name)
end_group

list_namenamelabeldatagroup
datagroupAddress_PointsAddress Points
datagroupCenterlinesCenterlines
datagroupTax_ParcelsTax Parcels
qaqcData_ReviewerData ReviewerAddress_Points
qaqcData_ReviewerData ReviewerCenterlines
qaqcData_ReviewerData ReviewerTax Parcels
qaqcInternal_Address_StandardsInternal Address StandardsAddress_Points
qaqcInternal_Address_StandardsInternal Address StandardsCenterlines
qaqcCheck_Overlapping_BoundariesCheck Overlapping BoundariesTax Parcels

However, I have MANY more possibilities to account for (according to my 6th grade math skills, roughly 4,000 more rows).  So what I want to do is something like this:

typenamelabelchoice_filter
select_multiple datagroupsel_datagroupSelect all datasets you manage:
begin_groupgroup_addresspointsAddress Point information:
select_multiple qaqcsel_ap_qaqcSelect the QA/QC procedures you currently use:datagroup="All" or datagroup="Addressing"
end_group
begin_groupgroup_centerlines
select_multiple qaqcsel_c_qaqcSelect the QA/QC procedures you currently use:datagroup="All" or datagroup="Addressing"
end_group
begin_groupgroup_taxparcels
select_multiple qaqcsel_tp_qaqcSelect the QA/QC procedures you currently use:datagroup="All" or datagroup="Boundaries"
end_group

list_namenamelabeldatagroup
datagroupAddress_PointsAddress Points
datagroupCenterlinesCenterlines
datagroupTax_ParcelsTax Parcels
qaqcData_ReviewerData ReviewerAll
qaqcInternal_Address_StandardsInternal Address StandardsAddressing
qaqcCheck_Overlapping_BoundariesCheck Overlapping BoundariesBoundaries

I have tried every configuration I could think of to no avail.  Is this possible?

Thanks,

Chris B.

0 Kudos
1 Reply
Jim-Moore
Esri Regular Contributor

Hi Chris

Currently, cascading selects can only be used with select_one questions. Choice filters cannot be applied to select_multiple questions. We have an open enhancement request for this feature in our system, and I've added your post to it.

Please find documentation on this here: Cascading and external selects—Survey123 for ArcGIS | ArcGIS and info on this blog post:https://community.esri.com/groups/survey123/blog/2015/10/22/cascading-selects-and-external-selects.

To use select_multiple, you would need to have a separate choice list for each set of QA/QC procedures.

Note that when using select_one questions, you can add more columns to the choices sheet to further filter each choice list. For example, you could add columns for each group (addressing, boundaries, etc.) to specify which group(s) each choice in the qaqc list belongs to. You could add a yes/no question for each of these, and then use a choice filter like: addressing=${addressing_yesno} and boundaries=${boundaries_yesno}.

Kind regards,

Jim

0 Kudos