This normally requires a Pro Plan to setup for your project. I think your project may have an older version of the Pro Plan and needs to updated to the newest one. Once that's done, Cory's solution will work.
I'm assuming in this case that you've loaded a the member
case into your form, and that you can load the member case ID id into
/data/member_id
What you want to get is:
The count of all member
cases which are children of this case's parent, for which the member case has the property mm_is_in_tb_treatment = 'yes'
For now we can create a new hidden value to store the parent household's case ID, since it'll make understanding the full query below easier.
New hidden value: /data/parent_id
:
instance('casedb')/casedb/case[@case_id = /data/member_id]/index/parent
All cases which are children of that parent would be referenced as:
instance('casedb')/casedb/case[index/parent = /data/parent_id]
You can now add your new filter directly to the end of that statement and introduce the count
count(instance('casedb')/casedb/case[index/parent = /data/parent_id][mm_is_in_tb_treatment = 'yes']
If you wanted, you could further specify that you (for safety) only want to include children that are member
cases and which are open. You can also collapse back the parent ID reference if you want a one-line expression:
count(instance('casedb')/casedb/case[@case_type='member'][@status='open'][index/parent = instance('casedb')/casedb/case[@case_id = /data/member_id]/index/parent][mm_is_in_tb_treatment = 'yes']
Best Answer
I'm almost positive that's correct. You could run a quick test and use the Reassign Cases feature to assign a case from the location to user1 then see if user2 gets it when you sync.