Перейти до основного контенту

Умови в анкетах

Умовні вирази у вебформах

Примітка: деякі знімки екрана ще показують англійський інтерфейс; перекладені назви наведено в тексті.

Умовні вирази дають змогу показувати або приховувати розділи форми залежно від відповідей користувача.

Вони корисні, коли потрібно змінювати послідовність заповнення форми залежно від відповіді користувача. Наприклад, можна показувати додатковий розділ, лише якщо користувач відповідає «Так» (Yes) на запитання, вибирає певний варіант відповіді або встановлює певний прапорець.

Умовні вирази можуть ґрунтуватися на таких віджетах:

  • «Так/Ні» (Yes/No)

  • «Вибір варіанта» (Multiple choice)

  • «Прапорець» (Checkbox)

Вміст, який з’являється або зникає, можна розмістити у віджеті «Розділ» (Section).

Щоб налаштувати умовний вираз, виконайте наведені нижче кроки та перегляньте приклад форми.

Крок 1

Відкрийте «Конструктор форм» (Form Builder), перейдіть до запитання, яке визначатиме умову, і задайте для нього «Назву змінної» (variable name).

Назва змінної має бути короткою та зрозумілою. Вона не може містити пробілів.

Приклади:

Запитання «Так/Ні»

Форми MyDocSafe — приклад назви змінної

  • Якщо запитання типу «Так/Ні» звучить як «Чи є ви резидентом Великої Британії?», віджет можна назвати «UK_resident».

Запитання з вибором варіанта

  • У запитанні з вибором варіанта «З якої ви країни?» відповідями можуть бути «Велика Британія» (UK), «Польща» (Poland), «Німеччина» (Germany), «Інший» (Other). Назвою змінної може бути «Country».

Запитання з прапорцями

  • У запитанні з прапорцями «Які продукти вас цікавлять?» відповідями можуть бути «Річний звіт» (Annual report), «ПДВ» (VAT), «Бухгалтерський облік» (Bookkeeping). Назвою змінної може бути «Product».

Крок 2

Додайте розділи, якщо хочете згрупувати подальші запитання, які мають з’являтися або приховуватися за тією самою умовою. Для простого запитання «Так/Ні» можна додати запитання, які з’являтимуться за відповіді «Так», та інші запитання — за відповіді «Ні» (No).

Крок 3

Пов’яжіть розділи з відповідними відповідями. Перейдіть до розділу «Умова» (Condition), щоб ввести формулу (докладніше нижче). Якщо потрібна складна умова, скористайтеся параметром «Розширений» (Advanced).

Спосіб запису умови залежить від типу віджета, з якого надходить відповідь:

  • Для віджетів «Так/Ні» умову слід записувати так: variable_name==true або variable_name==false; наприклад, UK_resident==true. Зверніть увагу: подвійний знак рівності означає перевірку на рівність.

  • Для віджетів «Вибір варіанта» змінна є об’єктом із властивостями «text» та «index».
    Наприклад: Country.text == "UK" або Country.index == 0
    ​

    • У наведеному вище прикладі 2, якщо умова — «Вибрано країну Польща», її запис буде Country.text=="Poland". Якщо умова — «Вибрано третій варіант», її запис буде Country.index == 2 (так, це правильно: індекс першого елемента — 0, другого — 1 тощо).

  • Для прапорців потрібно перелічити варіанти, які вас цікавлять. Розгляньмо наведений вище приклад 3:

    • Якщо назва змінної — Product, перший варіант позначається як Product[0], другий — Product[1] тощо.

    • Якщо умова — «Вибрано ПДВ», її слід записати як Product[1]==true.

    • Якщо умова — «Вибрано Річний звіт АБО ПДВ», виберіть «Будь-яка» (Any) для двох виразів: Product[0]==true та Product[1]==true.

    • Якщо умова — «Вибрано Річний звіт І ПДВ», виберіть «Усі» (All) для двох виразів: Product[0]==true та Product[1]==true.

  • Для віджета «Країна» (Country) потрібно посилатися на конкретний вибраний варіант. Це можна зробити кількома способами. Нижче їх наведено в порядку нашої переваги:

    • Якщо змінна — Country, а умова має бути «Якщо вибрано Сполучені Штати», скористайтеся одним із цих варіантів:

      • Country.name == "United States of America"

      • Country.alpha3code == "USA"

      • Country.alpha2code == "US"

    • Ми надаємо перевагу першому варіанту: хоча він потребує найбільше введення, назву легко взяти зі списку країн, який показує віджет.

Приклад форми:

Зверніть увагу: умовні вирази можуть працювати зі складнішими структурами. Наприклад:

  • Умовні вирази можуть посилатися на змінні, вкладені в розділи. У такому разі потрібно задати назву змінної для кожного розділу, що містить вихідну змінну, і вказати в умовному виразі повний «шлях» до неї (наприклад, SectionName.VariableName).

  • Умовні вирази можуть посилатися на змінні, вкладені в інші форми. У такому разі діє подібне правило: самій формі потрібно призначити змінну, а форма має перебувати в правильному «просторі». Також потрібно змінити формулу:

    • для прапорців: замість FormName.SectionName.QuestionName[1]==true потрібно написати FormName.SectionName.QuestionName.values[1]==true

    • для вибору варіанта: замість FormName.Section.Name.QuestionName.index==2 потрібно написатиFormName.Section.Name.QuestionName.index=="тут має бути текст варіанта"

Поєднання умов

За допомогою майстра ви можете легко поєднувати умови у складні вирази.

Наприклад, якщо ви хочете поєднати дві умови, які мають виконуватися одночасно, виберіть параметр «Усі»:

Цей приклад означає: «Показувати поточний віджет, коли особа є резидентом Великої Британії та володіє житлом».

Якщо ж достатньо виконання будь-якої з умов, виберіть параметр «Будь-яка»:

Цей приклад означає: «Показувати поточний віджет, коли особа є резидентом Великої Британії або США».

Ви також можете створювати складніші вкладені або згруповані структури:

Наведений вище приклад означає: «Показувати поточний віджет, коли особа володіє житлом або має значні чисті активи й водночас є резидентом Великої Британії або США».

Ви отримали відповідь на своє запитання?