Restrict choices already selected from a repeat group

Hi @vick25 and @rrmaximiliano, thank you for flagging this. You can just use letters instead of numbers for the choice names (the formula as I wrote it only works on single letter-length choice names):

survey

type name label calculation choice_filter
calculate c1 concat(${visit})
begin_repeat visits Visits
calculate c2 substr(${c1}, 0, position(…) - 1)
select_one visits visit Visit not(contains(${c2}, name))
end_repeat

choices

list_name name label
visits a Visit 3A
visits b Visit 3B
visits c Visit 3C
visits d Visit 3D
visits e Visit 3E
visits f Visit 3F
visits g Visit 3G
visits h Visit 3H
visits i Visit 3I
visits j Visit 3J
visits k Visit 3K
visits l Visit 3L
visits m Visit 3M

choice-filter-repeat-group-alpha.xlsx (9.9 KB)

3 Likes