Валідація даних UI-форм у кабінеті користувача

Сторінка технічної документації є баченням майбутньої реалізації, актуальність якого може бути застарілою.

Low-code платформа надає можливості налаштування валідаційних правил через окремий адміністративний інтерфейс моделювання UI-форм. Наразі підтримуються наступні базові правила валідації на рівні окремих полів в залежності від їх типу:

  • Обмеження за типом даних

  • Відповідність введених даних заданому регулярному виразу

  • Обов’язковість введення даних

  • Мінімальна кількість символів

  • Максимальна кількість символів

  • Мінімальне значення

  • Максимальне значення

  • Обмеження за діапазоном дат

  • Максимальний розмір завантаженого файлу

  • тощо

Додатково існує можливість налаштування складних правил валідації за допомогою скриптування.

Застосування валідаційних правил

На даній діаграмі зображено послідовність кроків обробки запиту на внесення даних користувачем через UI-форму кабінету користувача. Наразі, платформа реалізує валідацію вхідних даних на двох рівнях:

  • Клієнтська валідація - для покращення досвіду користування та зниження навантаження на систему

  • Серверна валідація - для надання гарантій цілістності та коректності внесення даних з ціллю подальшої обробки на рівні бізнес-процесу

Diagram

Клієнтська валідація

Валідація даних у кабінеті користувача реалізована за допомогою окремого Form.IO модуля FormRenderer, який надає можливість перевірки відповідності введених даних правилам, визначеним у JSON-схемі UI-форми.

Приклад JSON-схеми опису UI-форми з налаштованими валідаційними правилами
{
  "components": [
    {
      "validate": {
        "required": true,
        "minLength": 1,
        "maxLength": 10
      },
      "type": "textfield",
      "customConditional": "<JavaScript validation rule>"
    },
    {
        "mask": false,
        "requireDecimal": false,
        "validate": {
            "max": 10
        },
        "type": "number"
    }
  ]
}

Серверна валідація

Детальніше можно ознайомитись у розділі Бекап та відновлення реєстру.