Повтарящи се въпроси
Повторенията са мощна функция в rtSurvey, позволяваща ви да събирате един и същи набор от информация многократно в рамките на единична анкета. Това е особено полезно за сценарии като домакински анкети, при които може да е необходимо събирането на данни за множество членове на домакинство.
Основна структура на повторение
За да създадете повторение в rtSurvey, използвайте конструкцията begin repeat и end repeat:
| type | name | label |
|--------------|--------------|----------------------|
| begin repeat | child_repeat | |
| text | name | Наименование на детето |
| decimal | birthweight | Тегло при раждане на детето |
| select_one male_female | sex | Пол на детето |
| end repeat | | |
В този пример потребителят може да събира информация за множество деца, добавяйки нови повторения в формуляра.
Означаване на повторения
Въпреки че колоната label е незадължителна за begin repeat, добавянето на заглавие може да подобри навигацията:
| type | name | label |
|--------------|--------------|----------------------|
| begin repeat | child_repeat | Информация за дете |
| text | name | Наименование на детето |
| decimal | birthweight | Тегло при раждане на детето |
| select_one male_female | sex | Пол на детето |
| end repeat | | |
rtSurvey ще показва “Информация за дете” като заглавие за всяка инстанция на повторение.
Фиксиран брой повторения
За задаване на фиксиран брой повторения, използвайте колоната repeat_count:
| type | name | label | repeat_count |
|--------------|--------------|----------------------|--------------|
| begin repeat | child_repeat | Информация за дете | 3 |
| text | name | Наименование на детето | |
| decimal | birthweight | Тегло при раждане | |
| end repeat | | | |
Това ще създаде точно 3 повторения за дете.
Динамичен брой повторения
rtSurvey поддържа динамични броячи на повторения въз основа на предишни отговори:
| type | name | label | repeat_count |
|----------|----------------|--------------------------------|--------------------|
| integer | num_hh_members | Брой членове на домакинството? | |
| begin repeat | hh_member | Член на домакинство | ${num_hh_members} |
| text | name | Наименование | |
| integer | age | Възраст | |
| end repeat | | | |
Условни повторения
Можете да използвате колоната relevant, за да показвате условно повторения:
| type | name | label | relevant |
|-------------------|-------------|---------------------------|---------------------|
| select_one yes_no | has_child | Живеят ли деца тук? | |
| begin repeat | child_repeat| Информация за дете | ${has_child} = 'yes'|
| text | name | Наименование на детето | |
| decimal | birthweight | Тегло при раждане | |
| end repeat | | | |
Специфични за rtSurvey функции
Обобщение на повторения
rtSurvey предоставя обобщен изглед на повторения. За персонализиране на обобщението, използвайте група в рамките на повторението:
| type | name | label |
|--------------|--------------|------------------------------------------|
| begin repeat | person_repeat| |
| begin group | person | ${first_name} ${last_name} - ${age} |
| text | first_name | Собствено наименование |
| text | last_name | Фамилно наименование |
| integer | age | Възраст |
| end group | | |
| end repeat | | |
Опции за изглед на повторения
rtSurvey предлага допълнителни опции за изглед на повторения:
appearance: field-list- Показва всички въпроси в повторение на един екранappearance: table-list- Представя повторенията в таблична форма
| type | name | label | appearance |
|--------------|--------------|-------------------|-------------|
| begin repeat | child_repeat | Информация за дете | table-list |
| text | name | Наименование | |
| integer | age | Възраст | |
| end repeat | | | |
Вложени повторения
rtSurvey поддържа вложени повторения за сложни структури от данни:
| type | name | label |
|--------------|----------------|----------------------|
| begin repeat | household | Домакинство |
| text | hh_name | Наименование на домакинство |
| begin repeat | hh_member | Член на домакинство |
| text | member_name | Наименование на член |
| integer | member_age | Възраст на член |
| end repeat | | |
| end repeat | | |
Най-добри практики за използване на повторения в rtSurvey
- Използвайте смислени наименования и заглавия за повторения за подобряване на анализа на данни.
- Помислете за използването на динамичен брой на повторенията за намаляване на грешките при въвеждане на данни.
- Тествайте формуляра задълбочено, особено при използване на сложни вложени повторения.
- Използвайте функцията за обобщение, за да помогнете на анкетьорите да навигират в дълги списъци от повторения.
- Бъдете предпазливи при голям брой повторения, тъй като те могат да засегнат производителността на формуляра.
Обработка на нулеви повторения
За представяне на нулеви повторения в rtSurvey:
- Обучете анкетьорите да изтрият първото повторение, ако не е необходимо.
- Използвайте динамичен брой на повторенията, когато точният брой е известен.
- Използвайте
relevant, за да показвате условно повторения.
Съображения за експортиране на данни
При експортиране на данни от rtSurvey, данните от повторенията обикновено се изравняват. Всяка инстанция на повторение става отделен ред в експортираните данни, като данните от родителския формуляр се повтарят за всяка инстанция.
Съображения за мобилното приложение
- Повторенията в мобилното приложение rtSurvey поддържат офлайн събиране на данни.
- Голям брой повторения може да засегне производителността на приложението на устройства от нисък клас.
Чрез ефективното използване на повторения в rtSurvey, можете да създавате гъвкави и мощни анкети, способни да заснемат сложни, йерархични структури от данни, поддържайки удобен за потребителя интерфейс за анкетьорите.