Един начин да се осигури качество на данните е да добавите ограничения към полетата с данни във формуляра. Ограниченията помагат да се предотврати въвеждането от потребителите на невалидни или невъзможни отговори. Например, при питане за дохода на дадено лице, искате да избегнете нереалистични стойности, като отрицателни числа или изключително високи стойности. Добавянето на ограничения за данни към формуляра е лесно. Просто следвайте стъпките по-долу:

  1. Добавете нова колона, наречена “constraint”, към формуляра.
  2. В колоната “constraint” въведете формула, указваща ограниченията за отговора.

Пример

Нека разгледаме пример, при който искаме да добавим ограничение за дохода на лицето. Ограничението изисква доходът да бъде между $0 и $1,000,000. Ето как можете да настроите ограничението:

nameconstraint
Доход. >= 0 & . <= 1000000

В примера по-горе, “.” в формулата препраща обратно към променливата на въпроса, представляваща стойността, въведена от потребителя за въпроса “Доход”. Ограничението “. >= 0 && . <= 1000000” гарантира, че въведеният доход е по-голям или равен на 0 и по-малък или равен на 1,000,000.

Твърдо ограничение

Твърдото ограничение блокира изцяло подаването на формуляра, ако въведената стойност не удовлетворява израза. Анкетьорът не може да продължи, докато не въведе валидна стойност.

За добавяне на твърдо ограничение, въведете израза в колоната constraint. По избор добавете четимо от хора съобщение в constraint_message:

typenamelabelconstraintconstraint_message
integerageВъзраст на респондента. > 0 and . <= 120Възрастта трябва да бъде между 1 и 120
decimaltemperatureТелесна температура (°C). >= 35 and . <= 42Температурата трябва да бъде между 35°C и 42°C
textphoneТелефонен номерregex(., '^[0-9]{10}$')Въведете 10-цифрен телефонен номер

Множество условия

Комбинирайте условия с and / or:

  . >= 0 and . <= 100
  
  . = 'yes' or . = 'no'
  

Използване на regex() за валидиране на шаблон

Функцията regex(value, pattern) тества стойност спрямо регулярен израз:

typenamelabelconstraintconstraint_message
textemailИмейл адресregex(., '^[^@]+@[^@]+\.[^@]+$')Въведете валиден имейл адрес
textzip_codeПощенски кодregex(., '^[0-9]{5}$')Въведете 5-цифрен пощенски код

Препратка към други полета в ограничение

Използвайте ${fieldname} за препратка към стойности от други въпроси:

typenamelabelconstraintconstraint_message
integerend_yearКрайна година. >= ${start_year}Крайната година трябва да бъде след началната година
decimalloan_repaidИзплатена сума. <= ${loan_amount}Не може да бъде изплатено повече от сумата на заема

Меко предупреждение

Меко предупреждение (известно още като меко ограничение или предупреждение) предупреждава анкетьора, че дадена стойност изглежда необичайна, но все пак позволява продължаване. Това е полезно, когато дадена стойност е технически валидна, но статистически малко вероятна.

rtSurvey поддържа меки предупреждения чрез колоната constraint с подход към constraint_type, или чрез изгледа soft, комбиниран с поле за бележка.

Най-честият модел е да се използва бележка с израз relevant, маркираща подозрителната стойност, заедно с въпрос acknowledge за потвърждение:

typenamelabelrelevant
integerchildrenБрой деца
notechildren_warningПредупреждение: Въведохте ${children} деца. Моля, потвърдете, че това е вярно.. > 15
triggerchildren_confirmПотвърдете, че броят на децата е верен${children} > 15

Меко предупреждение само с constraint_message

За по-просто меко предупреждение можете да формулирате ограничението да предупреждава при екстремни стойности, но все пак да позволява широк диапазон:

typenamelabelconstraintconstraint_message
integerchildrenБрой деца. >= 0 and . <= 30Тази стойност изглежда много висока. Моля, проверете.
Беше ли полезна тази страница?