Іспити
Функція іспиту додає режим тестування з таймером до опитування, з необов’язковою аудіозворотним зв’язком для правильних та неправильних відповідей.
Функція Іспит перетворює опитування на тест із таймером. Зворотний відлік відображається респонденту, а опитування записує, скільки часу залишилося, коли він закінчує. За бажанням можуть відтворюватися звукові сигнали для правильних і неправильних відповідей.
Це корисно для оцінки знань, тестів грамотності, перевірки компетентності польового персоналу та будь-якого опитування, де час виконання є значущими даними.
Функція check-exam()
Налаштуйте іспит за допомогою check-exam() у стовпці calculation поля calculate, розміщеного на початку форми:
check-exam(examTime, questionToStoreRemainingTime)
check-exam(examTime, questionToStoreRemainingTime, rightSound, wrongSound, excludeQuestion)
Параметри
| # | Параметр | Опис |
|---|---|---|
| 1 | examTime | Загальна тривалість іспиту в секундах |
| 2 | questionToStoreRemainingTime | Назва поля calculate або integer, яке зберігатиме час, що залишився після завершення іспиту |
| 3 | rightSound | (Необов’язково) Назва файлу аудіо для відтворення при правильній відповіді |
| 4 | wrongSound | (Необов’язково) Назва файлу аудіо для відтворення при неправильній відповіді |
| 5 | excludeQuestion | (Необов’язково) Список назв полів, розділених комами, що виключаються з таймера іспиту |
Базове налаштування
Крок 1: Додати поля іспиту
| type | name | label | calculation |
|---|---|---|---|
| calculate | exam_config | check-exam(600, 'remaining_time') | |
| calculate | remaining_time |
Крок 2: Додати питання
Таймер іспиту охоплює всі питання у формі, крім тих, що зазначені в excludeQuestion.
Крок 3: Зберегти час, що залишився
Поле, вказане в параметрі 2 (remaining_time), автоматично встановлюється на кількість секунд, що залишились при відправленні.
З аудіозворотним зв’язком
Прикріпіть звукові файли до форми як медіавкладення, потім посилайтеся на них:
| type | name | label | calculation |
|---|---|---|---|
| calculate | exam_config | check-exam(300, 'remaining_time', 'correct.mp3', 'wrong.mp3') |
Звукові файли повинні бути прикріплені до форми як медіафайли, а назва файлу повинна точно збігатися (з урахуванням регістру), включаючи розширення.
Виключення питань з таймера
Передайте список назв полів, розділених комами, для виключення з іспиту:
check-exam(300, 'remaining_time', '', '', 'intro_note,consent_ack,section_header')
Найкращі практики
- Завжди інформуйте респондентів про часовий ліміт перед початком — використовуйте
noteабоtriggerперед полемcheck-exam(). - Виключайте вступні нотатки та питання згоди з таймера.
- Використовуйте
remaining_timeдля виявлення перевищення часу:if(${remaining_time} = 0, 'Timed out', 'Completed'). - Тестуйте з аудіофайлами на реальному пристрої перед розгортанням.
Обмеження
- Таймер лише для відображення — форма не відправляється автоматично після закінчення часу.
- Аудіозворотний зв’язок потребує увімкненого звуку на пристрої.
- Функція іспиту є розширенням rtSurvey і не є частиною стандартної специфікації XLSForm.