Paslėptas
Paslėpti laukai saugo reikšmes, kurios niekada nerodomi respondentui — naudojami kontekstui perduoti, duomenims iš anksto užpildyti ar tarpiniams rezultatams saugoti.
Laukas hidden saugo reikšmę, kuri niekada nerodoma respondentui. Skirtingai nei calculate (kuri apskaičiuoja reikšmę), hidden naudojamas išoriškai pateiktai reikšmei nešti — pvz., užduoties ID, namų ūkio ID, perduotas iš kitos sistemos, arba surašytojo kodas, įterpiamas paleidus formą.
Pagrindinė XLSForm specifikacija
| type | name | label |
|---|---|---|
| hidden | household_id |
Paslėptiems laukams etiketės nėra reikalingos, nes ekrane nieko neatvaizduojama.
Naudojimo atvejai
Paslėpti laukai dažnai naudojami:
- Iš anksto priskirto ID perdavimui iš apklausos valdymo sistemos (pvz., namų ūkio ID, bylos numeris, užduoties kodas)
- Formos versijos ar diegimo metaduomenų saugojimui
- Surašytojui specifinės konfigūracijos įterpimui formos paleidimo metu
- Duomenų perkėlimui iš pirminės formos į antrinę formą susietus darbo eigoje
- Reikšmės saugojimui, gautos iš URL parametrų, kai forma atidaroma per žiniatinklio nuorodą
Numatytosios reikšmės nustatymas
Dažniausias modelis yra naudoti hidden su default išraiška, kad reikšmė būtų nustatyta atidarus formą:
| type | name | default |
|---|---|---|
| hidden | deployment_code | ‘ZONE_A_2024’ |
| hidden | form_version | ‘3.1’ |
Paslėpto lauko nuoroda skaičiavimuose
Paslėptų reikšmės gali būti nurodytos kaip bet kuris kitas laukas naudojant ${lauko_pavadinimas}:
| type | name | label | calculation |
|---|---|---|---|
| hidden | zone_code | ||
| calculate | label_prefix | concat(’[’, ${zone_code}, ‘] ‘) | |
| note | intro | ${label_prefix} Sveiki atvykę į namų ūkio apklausą |
Paslėptų laukų naudojimas su iš anksto užpildymu / URL parametrais
Atidarant žiniatinklio formą per URL, galite perduoti parametrus, kurie užpildo paslėptus laukus. Tai leidžia iš anksto įkelti namų ūkio ID ar užduoties kodą, surašytojui jo nerašant:
https://your-server.com/form/FORMID?household_id=H00123&zone_code=NORTH
Laukas pavadinimu household_id bus automatiškai užpildytas su H00123.
Geriausios praktikos
- Naudokite
hidden(necalculate), kai reikšmė yra įterpiama išoriškai ir neturėtų būti perskaičiuojama. - Naudokite
calculate, kai reikšmė yra išvedama iš kitų formos laukų. - Visada nustatykite
default, jei paslėptas laukas turi turėti reikšmę — paslėptas laukas be numatytosios reikšmės bus tuščias. - Aiškiai pavadinkite paslėptus laukus, kad juos atskirtumėte (pvz., naudokite priešdėlį
_hidden_ar nuoseklią pavadinimų konvenciją).
Apribojimai
- Paslėpti laukai įtraukiami į eksportuojamus duomenis kaip bet kuris kitas laukas.
- Jų negalima rodyti sąlygiškai — jie visada yra (bet nematomi).
- Jei reikia dinamiškai apskaičiuojamo lauko, vietoj to naudokite
calculate.