As repetições são uma funcionalidade poderosa no rtSurvey que lhe permitem recolher o mesmo conjunto de informação múltiplas vezes dentro de um único inquérito. Isto é particularmente útil para cenários como inquéritos domésticos, onde pode precisar de recolher dados sobre múltiplos membros do agregado familiar.

Estrutura Básica de Repetição

Para criar uma repetição no rtSurvey, use a construção begin repeat e end repeat:

  | type         | name         | label                |
|--------------|--------------|----------------------|
| begin repeat | child_repeat |                      |
| text         | name         | Nome da criança         |
| decimal      | birthweight  | Peso ao nascimento da criança  |
| select_one male_female | sex | Sexo da criança         |
| end repeat   |              |                      |
  

Neste exemplo, o utilizador pode recolher informação sobre múltiplas crianças adicionando novas repetições no formulário.

Etiquetar Repetições

Embora a coluna label seja opcional para begin repeat, adicionar uma etiqueta pode melhorar a navegação:

  | type         | name         | label                |
|--------------|--------------|----------------------|
| begin repeat | child_repeat | Informação da Criança    |
| text         | name         | Nome da criança         |
| decimal      | birthweight  | Peso ao nascimento da criança  |
| select_one male_female | sex | Sexo da criança         |
| end repeat   |              |                      |
  

O rtSurvey exibirá “Informação da Criança” como título para cada instância de repetição.

Contagens de Repetição Fixas

Para especificar um número fixo de repetições, use a coluna repeat_count:

  | type         | name         | label                | repeat_count |
|--------------|--------------|----------------------|--------------|
| begin repeat | child_repeat | Informação da Criança    | 3            |
| text         | name         | Nome da criança         |              |
| decimal      | birthweight  | Peso ao nascimento da criança  |              |
| end repeat   |              |                      |              |
  

Isto criará exatamente 3 repetições de crianças.

Contagens de Repetição Dinâmicas

O rtSurvey suporta contagens de repetição dinâmicas baseadas em respostas anteriores:

  | type     | name           | label                          | repeat_count       |
|----------|----------------|--------------------------------|--------------------|
| integer  | num_hh_members | Número de membros do agregado familiar?   |                    |
| begin repeat | hh_member  | Membro do Agregado Familiar               | ${num_hh_members}  |
| text     | name           | Nome                           |                    |
| integer  | age            | Idade                            |                    |
| end repeat |              |                                |                    |
  

Repetições Condicionais

Pode usar a coluna relevant para exibir condicionalmente repetições:

  | type              | name        | label                     | relevant           |
|-------------------|-------------|---------------------------|---------------------|
| select_one yes_no | has_child   | Vivem aqui crianças?|                     |
| begin repeat      | child_repeat| Informação da Criança         | ${has_child} = 'yes'|
| text              | name        | Nome da criança              |                     |
| decimal           | birthweight | Peso ao nascimento da criança       |                     |
| end repeat        |             |                           |                     |
  

Funcionalidades Específicas do rtSurvey

Resumo de Repetição

O rtSurvey fornece uma vista de resumo das repetições. Para personalizar o resumo, use um grupo dentro da repetição:

  | type         | name         | label                                    |
|--------------|--------------|------------------------------------------|
| begin repeat | person_repeat|                                          |
| begin group  | person       | ${first_name} ${last_name} - ${age}      |
| text         | first_name   | Primeiro nome                               |
  
Esta página foi útil?