重複是 rtSurvey 中的一個強大功能,允許您在單次問卷調查中多次收集相同的資訊集合。這對於家戶調查等情境特別有用,您可能需要收集多個家庭成員的資料。

基本重複結構

要在 rtSurvey 中建立重複,請使用 begin repeatend repeat 結構:

  | type         | name         | label                |
|--------------|--------------|----------------------|
| begin repeat | child_repeat |                      |
| text         | name         | Child's name         |
| decimal      | birthweight  | Child's birthweight  |
| select_one male_female | sex | Child's sex         |
| end repeat   |              |                      |
  

在此範例中,使用者可以通過在表單中添加新的重複來收集多個孩子的資訊。

標記重複

雖然 begin repeatlabel 欄是選用的,但添加標籤可以改善導航:

  | type         | name         | label                |
|--------------|--------------|----------------------|
| begin repeat | child_repeat | Child Information    |
| text         | name         | Child's name         |
| decimal      | birthweight  | Child's birthweight  |
| select_one male_female | sex | Child's sex         |
| end repeat   |              |                      |
  

rtSurvey 將顯示「Child Information」作為每個重複實例的標題。

固定重複次數

要指定固定數量的重複,請使用 repeat_count 欄:

  | type         | name         | label                | repeat_count |
|--------------|--------------|----------------------|--------------|
| begin repeat | child_repeat | Child Information    | 3            |
| text         | name         | Child's name         |              |
| decimal      | birthweight  | Child's birthweight  |              |
| end repeat   |              |                      |              |
  

這將建立正好 3 次子重複。

動態重複次數

rtSurvey 支援基於先前答案的動態重複次數:

  | type     | name           | label                          | repeat_count       |
|----------|----------------|--------------------------------|--------------------|
| integer  | num_hh_members | Number of household members?   |                    |
| begin repeat | hh_member  | Household Member               | ${num_hh_members}  |
| text     | name           | Name                           |                    |
| integer  | age            | Age                            |                    |
| end repeat |              |                                |                    |
  

條件重複

您可以使用 relevant 欄有條件地顯示重複:

  | type              | name        | label                     | relevant           |
|-------------------|-------------|---------------------------|---------------------|
| select_one yes_no | has_child   | Do any children live here?|                     |
| begin repeat      | child_repeat| Child Information         | ${has_child} = 'yes'|
| text              | name        | Child's name              |                     |
| decimal           | birthweight | Child's birthweight       |                     |
| end repeat        |             |                           |                     |
  

rtSurvey 特定功能

重複摘要

rtSurvey 提供重複的摘要視圖。要自訂摘要,請在重複中使用群組:

  | type         | name         | label                                    |
|--------------|--------------|------------------------------------------|
| begin repeat | person_repeat|                                          |
| begin group  | person       | ${first_name} ${last_name} - ${age}      |
| text         | first_name   | First name                               |
| text         | last_name    | Last name                                |
| integer      | age          | Age                                      |
| end group    |              |                                          |
| end repeat   |              |                                          |
  

重複外觀選項

rtSurvey 為重複提供額外的外觀選項:

  • appearance: field-list - 在一個螢幕上顯示重複中的所有問題
  • appearance: table-list - 以表格格式呈現重複
  | type         | name         | label            | appearance  |
|--------------|--------------|-------------------|-------------|
| begin repeat | child_repeat | Child Information | table-list  |
| text         | name         | Name              |             |
| integer      | age          | Age               |             |
| end repeat   |              |                   |             |
  

巢狀重複

rtSurvey 支援用於複雜資料結構的巢狀重複:

  | type         | name           | label                |
|--------------|----------------|----------------------|
| begin repeat | household      | Household            |
| text         | hh_name        | Household Name       |
| begin repeat | hh_member      | Household Member     |
| text         | member_name    | Member Name          |
| integer      | member_age     | Member Age           |
| end repeat   |                |                      |
| end repeat   |                |                      |
  

在 rtSurvey 中使用重複的最佳實踐

  1. 使用有意義的重複名稱和標籤以改善資料分析。
  2. 考慮使用動態重複次數以減少資料輸入錯誤。
  3. 徹底測試您的表單,特別是在使用複雜的巢狀重複時。
  4. 使用摘要功能幫助調查員導航長長的重複清單。
  5. 謹慎對待大量重複,因為它們可能會影響表單效能。

處理零重複

在 rtSurvey 中表示零重複:

  1. 訓練調查員在不需要時刪除第一個重複。
  2. 在確切數量已知時使用動態重複次數。
  3. 使用 relevant 有條件地顯示重複。

資料匯出考量

從 rtSurvey 匯出資料時,重複資料通常會被展平。每個重複實例成為匯出資料中的單獨一行,父表單的資料對每個實例重複。

行動應用程式注意事項

  • rtSurvey 行動應用程式中的重複支援離線資料收集。
  • 大量重複可能會影響低端裝置上的應用程式效能。

透過在 rtSurvey 中有效使用重複,您可以建立靈活且強大的問卷調查,能夠捕獲複雜的階層式資料結構,同時為調查員保持使用者友好的介面。

此頁面有幫助嗎?