ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
typenamelabel::en
required
relevantappearanceread_onlyconstraintconstraint_messagecalculationchoice_filterhint::endefaultnotes
repeat_count
parameters
2
begin groupinputsNO_LABELFALSE
3
begin groupuserNO_LABEL
4
stringcontact_idNO_LABELContact ID of the logged in user
5
stringfacility_idNO_LABELPlace ID of the logged in user
6
stringnameNO_LABELName of the logged in user
7
end groupuser
8
end group
9
10
11
begin groupinitNO_LABELfield-list
12
select_one contactcreate_new_personSet the Primary Contactyes
13
string_idSelect the Primary Contactselected(${create_new_person},'old_person')
select-contact type-team_lead
14
select_one place_typeplace_typeEnter the name of this placehidden
PLACE_TYPE
15
calculateplace_type_translationjr:choice-name(${place_type},'${place_type}')
16
end group
17
18
begin groupcontactNew Personselected(${create_new_person},'new_person')field-list
19
hiddenparentNO_LABELPARENT
20
hiddentypeNO_LABELperson
21
stringfirst_nameFirst Nameyes
22
stringlast_nameSurnameyes
23
calculatenameNO_LABELjoin(' ',${first_name}, ${last_name})
24
stringemailEmail Addressyes
25
telphoneCell NumberTRUE
Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678
26
hiddenroleNO_LABEL
team_lead
27
begin groupmetaNO_LABELhidden
28
calculatecreated_by../../../inputs/user/name
29
calculate
created_by_person_uuid
../../../inputs/user/contact_id
30
calculate
created_by_place_uuid
../../../inputs/user/facility_id
31
end group
32
end group
33
34
begin groupbeginfield-list
35
stringnameOrganisation nameyes
36
select_multiple districts_rural
sm_ruralDistrictsyes${is_rural}=1minimalselected(${districts}, name)
37
select_multiple districts_metro
sm_metroDistrictsyes${is_rural}=0minimalselected(${districts}, name)
38
calculatesm_districtsif(${is_rural}!='',if(${is_rural}=1,${sm_rural},${sm_metro}),'')
39
calculatesm_district_countNO_LABELcount-selected(${sm_districts})
40
stringexternal_idExternal ID
41
stringnotesNotesmultiline
42
end groupbegin
43
44
begin groupg_municipalities${is_rural}=1field-list
45
calculate_ms../../npo_data/municipalities
46
begin repeatr_municipalitiesMunicipalities
count-selected(${sm_districts})
47
calculatedistrictselected-at(${sm_districts}, position(..)-1)
48
49
calculateext_checkcontains(${_ms}, ${district})
50
calculateext_start_keyconcat(${district}, ':')
51
calculateext_end_keyconcat(':',${district})
52
calculateext_initial../ext_checksubstring-after(${_ms},../ext_start_key)
53
calculateext_values../ext_checksubstring-before(../ext_initial,../ext_end_key)
54
notetestValues../ext_values
55
56
select_multiple municipalities
sm_municipalities_initialSelect municipalities for district ${district}hidden../ext_valuesdistrict=${district}
57
select_multiple municipalities
sm_municipalitiesSelect municipalities for district ${district}yesminimal
selected(${sm_municipalities_initial}, name)
58
59
calculate
map_municipalities_for_district
join(':', ${district},join(':', ${sm_municipalities}, ${district}))
60
end repeatr_municipalities
61
calculate
mapping_municipalities_for_districts
join(',',${map_municipalities_for_district})
62
notetest1${mapping_municipalities_for_districts}
63
calculate
all_selected_municipalities
join(' ', ${sm_municipalities})
64
end groupg_municipalities
65
66
begin groupg_main_placesfield-list
67
calculatecount
if(${is_rural}!='',if(${is_rural}=1, count-selected(${all_selected_municipalities}), count-selected(${sm_districts})),0)
68
begin repeatr_main_placesMain Places
${count}
69
calculatedistrict_${is_rural}=0selected-at(${sm_districts}, position(..)-1)
70
calculatemunicipalityselected-at(${all_selected_municipalities}, position(..)-1)
71
calculatekeyif(${is_rural}=1, ${municipality}, ${district_})
72
73
calculateext_checkcontains(${main_places}, ${key})
74
calculateext_start_keyconcat(${key}, ':')
75
calculateext_end_keyconcat(':',${key})
76
calculateext_initial../ext_checksubstring-after(${main_places},../ext_start_key)
77
calculateext_values../ext_checksubstring-before(../ext_initial,../ext_end_key)
78
79
calculate
prev_main_places_rural
if(${location_type}='rural',../ext_values,'')
80
calculate
prev_main_places_metro
if(${location_type}='metro',../ext_values,'')
81
82
select_multiple main_places
sm_district_direct_main_places_initial
Select main places for district: ${district_}${is_rural}=0hidden../prev_main_places_metro
district=${district_} and municipality='NONE'
83
select_multiple main_places
sm_district_direct_main_places
Select main places for district: ${district_}yes${is_rural}=0minimal
selected(${sm_district_direct_main_places_initial}, name)
84
select_multiple main_places
sm_municipality_main_places_initial
Select main places for municipality: ${municipality}
${is_rural}=1hidden../prev_main_places_ruralmunicipality=${municipality}
85
select_multiple main_places
sm_municipality_main_places
Select main places for municipality: ${municipality}
yes${is_rural}=1minimal
selected(${sm_municipality_main_places_initial}, name)
86
calculatesm_main_places
if(${is_rural}=1, ${sm_municipality_main_places}, ${sm_district_direct_main_places})
87
88
calculate
map_main_places_for_municipality
join(':', ${key}, join(':', ${sm_main_places}, ${key}))
89
end repeatr_main_places
90
calculate
mapping_main_places_for_municipalities
join(',',${map_main_places_for_municipality})
91
notetest2${mapping_main_places_for_municipalities}
92
calculateall_selected_main_placesjoin(' ', ${sm_main_places})
93
end groupg_main_places
94
95
begin groupg_sub_placesfield-list
96
calculate_sps../../npo_data/sub_places
97
begin repeatr_sub_placesSub Places
count-selected(${all_selected_main_places})
98
calculatemain_placeselected-at(${all_selected_main_places}, position(..)-1)
99
100
calculateext_checkcontains(${_sps}, ${main_place})