Конструктор құрылымы Шолу

Визуалды форма редакторы drag-and-drop қағидаты бойынша жұмыс істейді: компоненттерді палитрадан холстқа (кенепке) сүйреп әкелесіз, олардың қасиеттерін реттейсіз, ал платформа дайын форманы өзі генерациялайды.

Жұмыс ортасы

  • Сол жақ палитра: компоненттер категориялар бойынша топтастырылған — «Негізгі» және «Орналасу» әрқашан қолжетімді; «Жетілдірілген» және «Деректер» категориялары Жетілдірілген режим қосылғаннан кейін пайда болады. Палитра үстінде компоненттер атауы бойынша тікелей іздеу бар.
  • Жұмыс холсті: болашақ форманың интерактивті макеті. Жаңа компонент сүйреу арқылы немесе палитра элементін шеруде қосылады (ол форманың соңынаа түседі).
  • Жедел әрекеттер панелі: холсттағы компонентке курсор апарғанда пайда болады.

Компонентке әрекеттер

ӘрекетНе істейді
ПараметрлерКомпонент қасиеттері диалогын ашады (қ. Жалпы параметр қойындылары).
КөшіруКомпонентті барлық кірістірілген өрістері мен ережелерімен конструктор буферіне орналастырады.
Төменге кірістіруБұрын көшірілген компонентті ағымдағының астына кірістіреді.
ЖылжытуКірістіру тізбегін ашпай-ақ компонентті басқа позицияға сүйреп әкелуге мүмкіндік береді.
ЖоюКомпонентті схемадан жояды. Кірістірілген өрістер контейнермен бірге жойылады.
JSONКомпоненттің JSON-схемасын тікелей өңдеу. Тек Жетілдірілген режимде қолжетімді.
📌 Конструкторға кірмейтіндер

Электрондық цифрлық қолтаңба талабы (ЭЦП/Ncalayer), геолокация саясаты, бет брендингі және тілдік аудармалар жарияланым деңгейінде — менеджердің «Негізгі», «Дизайн» және «Аудармалар» экрандарында орнатылады.

Бір беттік және көпбеттік форма Режимдер

Режим ажыратқышы конструктор холстінің үстінде орналасқан:

📄 Бір беттік

Барлық сұрақтар бір бетте орналасады. Қысқа сауалнамалар, өтініштер мен 15–20 сұраққа дейінгі сауалнамаларға жарамды.

🗂 Көпбеттік (Wizard)

Форма қадамдарға бөлінеді. Респондент оларды ретімен өтеді, барысын көреді және енгізілген деректерді жоғалтпай артқа қайта алады.

Көпбеттік режиммен жұмыс

  • Әрбір бет — холст үстіндегі жеке қойынды. Беттерді «+ Бет» түймесімен қосыңыз.
  • Бет тақырыбы респондентке навигацияда көрсетіледі; оны бет қасиеттерінде реттеңіз.
  • Беттердің атауын өзгертуге, сүйреп орындарын ауыстыруға және жоюға болады.
  • Соңғы бетте форма жіберу түймесі автоматты түрде орналасады.
  • Валидация келесі бетке өтер алдында ағымдағы бетті тексереді: респондент міндетті өрістер толтырылмай «әрі кете» алмайды.
⚠️ Режимді ауыстыру

Бір беттік форманы көпбеттік режимге ауыстырғанда барлық бар өрістер бірінші бетке түседі — оларды қадамдар арасына қолмен бөліңіз. Кері ауыстыру барлық өрістерді қайтадан бір бетке жинайды.

Компоненттің жалпы параметр қойындылары Қасиеттер

Параметрлер диалогы компонентке курсор апарғанда түймесімен ашылады. Қойындылар жиыны компонент түріне байланысты, бірақ негізгі құрам бірдей:

ҚойындыНегізгі параметрлер
Көрсетілу Өріс меткасы (Label), өріс ішіндегі кеңес (Placeholder), өріс астындағы сипаттама, қалқымалы кеңес (Tooltip), префикс және суффикс, метканы жасыру, қосымша CSS-кластар, Tab пернесімен өту.
Деректер Әдепкі мән, жасырын өрістер тазартылғандағы мінез-құлық, мән өзергенде форманы қайта есептеу.
Валидация (Тексеру) Міндетті өріс, минималды/максималды ұзындық, тұрақты өрнек, минималды/максималды мән (сандар мен күндер үшін), қате хабарламасының өз мәтіні.
API қасиеттері Өріс кілті (Property Name) — мәннің жауапқа, вебхукқа және Excel жүктеуіне осы атаумен түсетін аты. Интеграциялар үшін қосымша «Кілт-Мән» метадеректері.
Көрсету шарттары Жауаптарға байланысты компонент көрінулігінің ережелері (қ. Көрсету шарттары).
Орналасу 12-бағанды тордағы өріс ені (мобильді құрылғыларды қосқанда), ығысу (offset), автоматты өлшем.
💡 Өріс кілті (Property Name)

Мағыналы латын кілттерін қойыңыз (full_name, iin, work_phone): жауаптар осы атаулармен вебхукқа, Excel жүктеуіне және сыртқы API-ге келеді. Кілт меткадан автоматты жасалады, бірақ оны тексеріп, қолмен қайта атаған дұрыс — жарияланым басталғаннан кейін кілтті ауыстыру тарихи деректердің байланыстылығын үзеді.

Өрістердің жалпы қасиеттері Анықтамалық

Бұл параметрлер конструктор өрістерінің көпшілігінде бар. Олар компонент қасиеттері диалогының қойындылары бойынша топтастырылған; жекелеген компоненттердің арнайы параметрлері Компоненттердің егжей-тегжейлі параметрлері бөлімінде сипатталған.

Жетілдірілген белгісі қасиеттің тек Жетілдірілген режим қосылғаннан кейін қолжетімді екенін білдіреді.

«Көрсетілу» қойындысы

ҚасиетСипаттама
Метка (өріс тақырыбы)Респондент көретін өріс атауы.
Метканың орналасуыӨріске қатысты метка орны: жоғарыда, солда, оңда, төменде.
Label Width / Label MarginМетка ені және одан кейінгі қашықтық — жол енінің пайызымен (көлденең орналасу үшін).
Түсіндірмелі сипаттамаӨріс астындағы мәтін: түсініктеме, формат, толтыру мысалы.
Қалқымалы кеңесМетка жанындағы «?» белгішесінің мәтіні; курсор апарғанда/фокус болғанда көрсетіледі.
Пайдаланушылық CSS-классӨрісті нүктелік стильдеу үшін қосымша класс.
Порядок табуляции (Tab Index)Tab арқылы өту ретін қайта анықтайды.
Компонентті жасыруӨріс респондентке көрінбейді, бірақ мәні бұрынғыша жіберіледі (техникалық мәндер үшін).
Метканы (тақырыпты) жасыруӨрісті тақырыпсыз көрсету (мысалы, торлардың ішінде).
Форма жүктелгенде фокусКурсор автоматты түрде осы өріске орнатылады.
Өшірулі (тек оқуға)Өріс көрінеді, бірақ өзгертуге қолжетімсіз.
Кестелерде көрсетуМән жауаптардың кестелік көрінісінде шығарылады (сабмишндерді қарауға және жүктеулерге әсер етеді).
Модальді терезеде өңдеуге ашуҰзын мәндер қалқымалы терезеде өңделеді.
Show Label in DataGridДеректер торының әрбір жолында өріс меткасын көрсету.

«Деректер» қойындысы

ҚасиетСипаттама
Әдепкі мәнПайдаланушы енгізбей тұрып алдын ала толтырылған мән.
Деректер базасында сақтауМәнді жіберілетін форма деректеріне қосу керек пе (әдетте «Иә»).
API-ге жүктеп беруден қорғалғанМән сақталады, бірақ сыртқы жүйелерге API және вебхуктар арқылы қайтарылмайды.
Database IndexДҚБ-да өріс бойынша индекс жасайды (үлкен формалар үшін; ҚБ әкімшісінің қатысуын талап етеді).
Жазу кезінде шифрлауМән сервер жағында шифрланады.
Redraw OnКөрсетілген өріс өзергенде компонентті қайта сызу (күрделі көрсету логикасы үшін).
Шарт бойынша жасырылғанда мәнді жіберілетін деректерден алып тастауӨріс шартпен жасырылса, оның мәні сабмишнге түспейді.
Кастомды әдепкі мән (JS) ЖетілдірілгенJavaScript-өрнекпен есептелетін әдепкі мән.
Есептелетін мән (JS) ЖетілдірілгенБасқа өрістерден мәнді автоматты есептеу (мысалы, кесте бойынша қосынды).
Мәнді серверде есептеу ЖетілдірілгенЕсептеу браузерде емес, серверде орындалады.
Есептелген мәнді қолмен өзгертуге рұқсат ету ЖетілдірілгенПайдаланушы есептелген мәнді қайта анықтай алады.
Серверлік қайта анықтау (JSON) ЖетілдірілгенСерверде ауыстырылатын компонент параметрлері бар JSON.

«Валидация (Тексеру)» қойындысы

ҚасиетСипаттама
Толтыруға міндеттіТолтырылмаған өріспен форманың жіберілуін блоктайды.
Тексеру уақытыТексеру сәті: өзгергенде, өрістен шыққанда немесе форма жіберілгенде.
Жасырын болса да валидациялауӨріс шартпен жасырылғанда да тексеру.
Қате мәтіндерінде өрістің реттелетін атауыҚате мәтіндерінде өріс қалай аталатыны (ұзын меткалар үшін ыңғайлы).
Қате хабарламасының өз мәтініЕреже бұзылғанда респондент көретін мәтін; форманың барлық тіліне аударылады.
Кастомды JS-валидация, JSONLogic ЖетілдірілгенЕркін тексеру ережелері — қ. Жетілдірілген режим.

«API қасиеттері» қойындысы

ҚасиетСипаттама
Деректердегі кілт атауы (Property Name)Сабмишндегі, вебхуктағы, Excel жүктеудегі және сыртқы API-дегі өріс атауы. Мағыналы латын кілттерін қолданыңыз және жарияланым басталғаннан кейін өзгертпеңіз.
Топтау үшін өріс тегтеріКастомды логикада өрістерді топтау үшін еркін тегтер.
Қосымша метадеректер (Кілт-Мән)Сыртқы интеграциялар үшін еркін жұптар.

«Көрсету шарттары» қойындысы

ҚасиетСипаттама
Бұл компонент көрсетілуі керек:«True» — шарт орындалғанда көрсету, «False» — орындалғанда жасыру.
Форманың қай компоненті: / Келесі мәнге тең болғанда:Шарттың қарапайым конструкторы: салыстыру үшін өріс пен мәнді таңдау. Толығырақ — Көрсету шарттары.
JSON-шарт (Custom Conditional) ЖетілдірілгенҚұрама ережелер үшін JSONLogic форматындағы шарт.

«Орналасу» қойындысы

ҚасиетСипаттама
Баған ені / ығысу12-бағанды тордағы өріс ені (мобильді және планшет брейкпоинттерін қосқанда) және сол жақтағы ығысу.
HTML AttributesЕнгізу элементіне арналған еркін HTML-атрибуттар.

«Логика» қойындысы Жетілдірілген

«Триггер болғанда → әрекет орындау» текті ережелер. Толық сипаттама — Жетілдірілген режим бөлімінде.

ЭлементСипаттама
Логика атауы / ТүріЕреже атауы және триггер түрі: қарапайым шарт, JavaScript немесе JSONLogic.
«Қашан / Тең» триггеріӨрісті мәнмен салыстыру (көрсету шарттарындағыдай).
«Компонент қасиеті» әрекетіӨріс қасиетін өзгерту (мысалы, міндетті ету).
«Күйді орнату» / «Мәтін» әрекетіӨрісті еркін мәтні бар қате деп белгілеу.
«Мән (Javascript)» әрекетіӨріс мәнін есептеп, орнату.
«Schema Definition» әрекетіСхема фрагментін ағымдағы компонентпен біріктіру (merge).
«Custom Action (Javascript)» әрекетіТриггер жұмыс істегенде орындалатын еркін код.
«Event Name» әрекетіФорма оқиғасын іске қосу.

Көрсету шарттары Логика

Шартты көрінулік респонденттің алдыңғы жауаптарына байланысты сұрақтарды көрсетуге немесе жасыруға мүмкіндік береді. Параметр компонент қасиеттері диалогының «Көрсету шарттары» қойындысында орындалады:

  1. Компонент шарт орындалғанда (True) көрсетілуі керек пе, әлде орындалмағанда (False) — оны көрсетіңіз.
  2. Шарт көзі өрісін форманың барлық компоненттерінің ашылмалы тізімінен таңдаңыз.
  3. Салыстыру мәнін көрсетіңіз. Шарт жауап көрсетілген мәнмен дәл сәйкес келгенде жұмыс істейді.
Мысал

«Көлік жүргізу куәлігінің нөмірін көрсетуіңіз» өрісі тек «Автомобиль бар-жоғы» ажыратқышында «Иә» жауабы таңдалғанда ғана көрсетіледі.

Шартпен жасырылған өрістер компонент параметрлерінде нақты рұқсат етілмесе, жіберуге түспейді. Күрделі шарттар үшін (бірден бірнеше өріс, сандарды салыстыру, есептелетін өрнектер) Жетілдірілген режимді қолданыңыз — JSONLogic-шарттар.

Негізгі өрістер Компоненттер

Респонденттерден ақпарат жинауға арналған, қосымша режимдерсіз қолжетімді негізгі құрылымдық блоктар.

Мәтіндік өріс

Біржолды енгізу: аты-жөні, мекенжай, еркін мәтін.

Ұзындығы (мин/макс), тұрақты өрнек, префикс/суффикс, енгізу маскасы.

Көпжолды мәтін

Пікірлер, кері байланыс, толық жауаптар.

Жол саны, мазмұн бойынша авторөлшем, символ санауышы, ұзындық шектеуі.

Сан

Жас, сомалар, сандық көрсеткіштер.

Қадам (Step), минимум мен максимум, ондық белгілер саны, мыңдық формат.

Пароль

Символдарды жасырып енгізу.

Енгізуді жасырады; жауаптарда қарапайым мән ретінде сақталады — құпиялар үшін қолданбаңыз.

Құсбелгі (Чекбокс)

Шарттармен келісу, дара иә/жоқ ажыратқышы.

Міндеттілік (мысалы, келісім құсбелгісі), әдепкі мән.

Құсбелгілер тобы

Көптаңдау: респондент кез келген сан нұсқаны белгілейді.

Мәндер тізімі (Values), таңдалғандардың минималды және максималды саны, көлденең/тік орналасу.

Ашылмалы тізім

Компакті тізімнен бір немесе бірнеше нұсқаны таңдау.

Статикалық мәндер, REST-көзі (JSON бар URL), нұсқалар бойынша тікелей іздеу, көптаңдау режимі.

Ажыратқыш (Радио)

2–5 нұсқадан дара таңдау (жыныс, иә/жоқ).

Мәндер тізімі, көлденең/тік орналасу.

Түйме

Форма ішіндегі әрекет түймелері: жіберу, қалпына келтіру, пайдаланушылық логика.

Әрекет (Жіберу/Қалпына келтіру/Оқиға), стиль, өлшем, басқаннан кейін блоктау, валидация кезінде көрсету.

Файл жүктеу Файл қауіпсіздігі

Міндетті антивирустық тексерісі бар екі мамандандырылған жүктеу компоненті.

Файл

Құжаттар, сканерленген көшірмелер, PDF, архивтер.

Рұқсат етілген түрлері (файл шаблоны), өлшем мен санының шектеуі, бір уақытта бірнеше файл.

Фото / Видео

Алдын ала көрінісі бар суреттер мен бейнежазбалар.

image/* және video/* қабылдайды, миниатюралар галереясын көрсетеді, көпфайлды жүктеуді қолдайды.

Файлдарды қауіпсіз өңдеу механизмі

  1. Респондент формада файлды таңдайды.
  2. Файл платформаның қорғалған файлдық шлюзіне жіберіліп, уақытша оқшауланған буферге орналастырылады.
  3. ClamAV қызметі файлды вирус пен зиянды сигнатураларға тексереді.
  4. Таза файл қорғалған S3-қоймасына сақталады, ал форма сабмишніне файлдың қауіпсіз бірегей UUID-і жазылады.
  5. Вирус анықталса — жүктеу блокталады, файл бірден жойылады.

Файлдың максималды өлшемін әкімші «Жүйе параметрлерінде» орнатады. Жүктелген файлдарды бағдарламалы жүктіп алу және қолжетімділік саясаттары Файлдарды жүктіп алу (File API) бөлімінде сипатталған.

Белгілеу және торлар Белгілеу

Деректерді жинамайтын, бірақ форманы құрылымдайтын компоненттер: өрістерді топтастырады, мәтінді безендіреді және орналасуды басқарады.

HTML элемент

Еркін HTML-белгілеуді қою: тақырыптар, бөлгіштер, сілтемелер.

Тег (h2, hr, p…), атрибуттар, CSS-класс, мазмұн.

Мәтіндік блок (Контент)

Форматталған түсіндірме мәтін: нұсқаулықтар, дисклеймерлер, контакт-блоктар.

Форматталған мәтін редакторы, HTML-режимі. Мазмұн жауаптарға сақталмайды.

Бағандар (Белгілеу)

Өрістерді 12-бағанды тор бойынша бір қатарға орналастыру: мысалы, «Аты» (6) және «Тегі» (6).

Әр бағанның ені, ығысулар, мобильді құрылғылардағы бейімделген қайта құрылым.

Өрістер тобы (Fieldset)

Ортақ тақырыбы мен жақтауы (легендасы) бар логикалық өріс тобы.

Топ тақырыбы, тақырыпты жасыру, еркін CSS-кластар.

Панель (Карточка)

Тақырыбы мен безендірілуі бар контейнер. Ұзын сауалнамаларды мағыналы блоктарға бөледі («Жеке деректер», «Еңбек өтіні»).

Жиырылуы (Collapsible), әдепкіде жиырылған (Collapsed), тема түсі.

Кесте

Күрделі макеттер мен көлденең кестелер үшін бекітілген «жолдар × бағандар» торы.

Жол мен баған саны, ұяшық ені, тақырыптар, жолдарды кезектестіру.

Қойындылар

Форманың бір бетіндегі ауыстырылатын қойындылар.

Қойындылар атаулары, әдепкі белсенді қойынды. Форманың көпбеттік режимімен шатастырмаңыз.

Жақтаулы контейнер (Well)

Өрістер тобын немесе мәтінді визуалды бөлектеу үшін астарлы блок.

Кірістіру: контейнерге кез келген өрістер мен басқа контейнерлерді сүйреп қоюға болады.

Жетілдірілген өрістер Жетілдірілген режим

Бұл компоненттер «Жүйе параметрлерінде» Жетілдірілген режимді қосқаннан кейін палитрада пайда болады.

Электрондық пошта (Email)

Форматтың кірістірілген тексерісі бар пошта мекенжайы.

Дайын e-mail валидациясы, қосымша ережелер тұрақты өрнек арқылы.

Веб-сілтеме (URL)

URL дұрыстығын тексеретін сайт немесе ресурс мекенжайы.

Кірістірілген сілтеме валидациясы.

Телефон нөмірі

Енгізу маскасы бар телефон.

Маска (енгізу шаблоны), «шикізат» мәнді де форматталғанды да сақтайды.

Тегтер

Мәндер тізімін «чиптермен» енгізу: дағдылар, кілт сөздер.

Тегтердің максималды саны, бөлгіш, массив ретінде сақталады.

Мекенжай

Құрылымдалған мекенжай немесе сыртқы провайдер арқылы геоіздеу.

Қолмен енгізу режимі немесе autocomplete-провайдер, ел бойынша шектеу.

Күні және уақыты

Күнтізбеден күн және/немесе уақыт таңдау.

Көрсету форматы, минималды/максималды күн, уақыт пен сағаттық белдеуді қосу, «тек күн» режимі.

Күн (Дата)

Үш ашылмалы тізімнен күн: күн, ай, жыл.

Күнтізбе орнына жеке селекттер — туған күндерге ыңғайлы.

Уақыт

Күнсіз уақыт таңдау (сағат:минут).

12/24 сағаттық формат, минут қадамы, минималды және максималды уақыт.

Валюта (Сома)

Форматтауы бар ақшалай сома.

Валюта символы, мыңдық және бөлшек бөлгіштер, белгілер шектеуі.

Сауалнама матрицасы

«Сұрақ × жауап нұсқасы» кестесі: респондент ұяшықтарды белгілейді (мысалы, параметрлерге қанағаттанушылық).

Сұрақтар (Rows) мен нұсқалар (Columns) тізімі, кірістірілген объект ретінде сақталады.

Цифрлық қолтаңба

Тач-экранда тышқанмен немесе стилустың қолдан жазылған қолтаңбасы.

Полотноның ені мен биіктігі, қалам мен фон түсі. Сурет ретінде сақталады.

Деректер компоненттері Жетілдірілген режим

Жауаптар құрылымын және қайталанатын блоктарды ұйымдастыруға арналған контейнерлер. Жетілдірілген режимде қолжетімді.

Деректер контейнері

Кірістірілген өрістерді жеке жауап объектісіне топтастырады: паспорт: {серия, номер}.

Жүктеудегі және вебхуктағы кірістіру контейнер құрылымына сәйкес.

Деректер торы (Кесте)

Бағандардың бекітілген жиыны бар қайталанатын жолдар: отбасы мүшелері, мекенжайлар, тауарлар.

Баған-компоненттер, әдепкі жол саны, респонденттің жол қосуы/жоюы, лимиттер (мин/макс жолдар).

Кілт-мән картасы

Респонденттің жедел енгізетін «кілт → мән» еркін жұптары.

Алдын ала құрамы белгісіз реквизиттер мен сипаттамаларға жарамды.

Динамикалық кесте (EditGrid)

Еркін күрделіліктегі қайталанатын блоктар: әрбір жол — ашылатын форма.

Жол шаблоны (кез келген компоненттер), жол тақырыбы/астының шаблондары, модальді терезеде қосу және өңдеу.

Компонентті жасыру (Hidden)

Респондентке көрінбейтін өріс: техникалық мәндер, URL-ден алынған деректер, есептелетін тұрақтылар.

Әдепкі мән, шартты көрінулік қажет емес — өріс әрқашан жасырын, бірақ жауапқа түседі.

Компоненттердің егжей-тегжейлі параметрлері Анықтамалық

Корпоративтік формалардың ең сұранысқа ие компоненттерінің параметрлерінің толық тізбесі. Жалпы қасиеттер (метка, сипаттама, міндеттілік, API кілті т.б.) Өрістердің жалпы қасиеттері бөлімінде келтірілген — мұнда тек арнайылары.

Параметрлер құрамы платформаның ағымдағы нұсқасына сәйкес. Жетілдірілген белгісі — қасиет Жетілдірілген режимде қолжетімді.

Мәтіндік өріс, Көпжолды мәтін, Сан

Мәтіндік енгізудің жалпы параметрлері
ҚасиетСипаттама
Өріс ішіндегі кеңес (Placeholder)Бос өрістегі сұр мысал-мәтін; деректерге түспейді.
Префикс (сол белгі) / Суффикс (оң белгі)Өріс ішіндегі тұрақты мәтін: валюта, өлшем бірліктері, «+7».
Виджет + виджет параметрлеріБалама енгізу контролі (мысалы, күнтізбе). Арнайы сценарий қажет болмаса «Енгізу жолын» қалдырыңыз.
Енгізу маскасыҚатаң формат шаблоны: 9 — цифр, a — әріп, * — әріп немесе цифр. Телефон мысалы: +7(999)999-99-99.
Display Mask (көрсету маскасы)Енгізудің әсем көрінісі, сақталатын мәнді өзгертпейді. Маска мәнге де әсер етсін десеңіз, тек «Енгізу маскасын» қолданыңыз.
Apply Mask On (қолдану сәті)Change (әдепкі) — масканы әр өзгерісте тексеру; Blur — өрістен шыққанда.
Input Mask Placeholder CharМасканың толтырылмаған орындарын толтыратын символ; егер ол масканың өзінде кездессе — бос орынмен ауыстырылады.
Allow Multiple Masks + маскалар тізіміБірнеше балама маска: өрісте қажетті форматты таңдайтын ашылмалы тізім пайда болады.
«Күнтізбе» виджеті (Widget)Мәтіндік өрісті жолдық мәннің күн таңдауына айналдырады: көрсету форматы мен сақтау форматы бөлек реттеледі, мән пайдаланушының таймзонасына тәуелсіз. Күндермен толыққанды жұмыс үшін «Күні және уақыты» компоненті дұрысрақ.
Браузердің автотолтыруыБраузердің стандартты кеңестері (off, name, email, tel…).
Емле тексерісіне рұқсат етуБраузердің емле қателерін бөлектеуі.
Символ / сөз санауышын көрсетуӨріс астындағы тікелей санауыш; ұзындық шектеулерімен қоса қолдану пайдалы.
Енгізу өрісінің өзін жасыруЕнгізу маскирленеді (пароль сияқты); мән ашық түрде сақталады — құпиялар үшін қолданбаңыз.
Бірнеше мәнге рұқсат ету (multiple)Өріс мәндер массивін қабылдайды; жүктеуде және API-де — тізім.
Енгізу форматы (inputFormat)Мәнді санитизациялау: мәтін / «шикізат» / HTML (XSS-кірістірулерден қорғаныс).
Text Case (мәтін регистрі)Жоғарғы/төменгі регистрге автоматты келтіру.
Truncate Multiple SpacesҚайталанатын бос орындарды қысу.
Базада бірегей мәнМұндай мән бұрын бұл жарияланымда жіберілмегенін сервер тексерісі.
Мин./макс. ұзындық, Тұрақты өрнек, Мин./макс. сөзМәтін шектеулері; өрнек рецепттері — Валидация рецепттері.
Тек «Көпжолды мәтінде»
ҚасиетСипаттама
Rows (жол саны)Өрістің бастапқы биіктігі жолдармен (әдепкі 3).
Auto ExpandЕнгізу кезінде өріс биіктігі бойынша автоматты өседі.
Editor (редактор)Қарапайым мәтін немесе визуалды форматтау редакторы (қалың, тізімдер). Ескеріңіз: формалардағы форматталған мәтін қолжетімділікті (WCAG) нашарлатуы мүмкін — саналы қолданыңыз.
Editor Settings (JSON)Визуалды редактордың JSON-конфигурациясы (құралдар панели, стильдер). Жетілдірілген
Enable Image Upload + қойма/URL/каталог/файл кілтіРедактор мәтініне суреттер кірістіру. Корпоративтік формаларда әдетте өшірулі — файлдарды «Файл» компонентімен жинаған дұрыс.
Save As (сақтау форматы)Мәнді сақтау форматы: жол, JSON немесе HTML.
Тек «Санда»
ҚасиетСипаттама
Use Thousands SeparatorМыңдарды бос орын/үтірге бөлу (1 000 000).
Decimal PlacesОндық үтірден кейінгі белгілер санының максимумы.
Require DecimalОндық белгілерді нөлдіктерімен қоса әрқашан көрсету (10,00).
Decimal Symbol ЖетілдірілгенОндық бөлгіш символы (мысалы, үтір); диалогта жасырын — схема JSON-інде "decimalSymbol": "," ретінде орнатылады.
Минимум / Максимум (валидация)Санның рұқсат етілген диапазоны; есептілік пен есептеулерде қолданылады.
Бүтін сан (валидация)Бөлшек бөлігісіз тек бүтін мәндерге рұқсат ету.
Қадам (валидация)Мәннің гранулярлығы (қадамға еселік); әдепкі «any» — кез келген.

Құсбелгі, Құсбелгілер тобы, Ажыратқыш (Радио)

Тек «Құсбелгіде (Чекбокс)»
ҚасиетСипаттама
Input Type (енгізу түрі)Контролдің HTML-түрі (құсбелгі немесе радиокнопка).
Radio Key (name)Топ атауы: бірдей name-і бар бірнеше құсбелгі радио-таңдау сияқты жұмыс істейді.
Radio ValueҚұсбелгі орнатылғанда жіберілетін мән (әдепкі «true»).
Shortcut (ыстық перне)Пернетақтадан өріске жедел өту.
Нұсқалардың жалпы параметрлері (Құсбелгілер тобы және Радио)
ҚасиетСипаттама
Values (нұсқалар)Нұсқалар кестесі: Метка — респондент көретін, Мән — деректер мен есептерде сақталатын (тек жолдар немесе сандар!), Shortcut — ыстық перне. Нұсқалар реті сүйреп өзгертіледі.
Options Label PositionНұсқа подписьтарының орналасуы (оңда/солда/жоғарыда/төменде).
Inline LayoutНұсқалар бір қатарда (компакті) немесе тізіммен.
Деректер көзінің түрі (dataSrc)Нұсқалар қолмен беріледі немесе URL арқылы жүктеледі (JSON-массив): Data Source URL, Сақтау өрісі (Value Property), Нұсқаның көрсету шаблоны.
Сақтау түрі (dataType) — тек РадиодаСақталатын мәннің түрі: жол, сан, логикалық, объект.
Authenticate / Disables caching — URL-көздері үшінСұрау авторизациясы және жауапты кэштеу. SuraqHub сөздіктері үшін өшірулі қалдырыңыз — эндпоинт форма аясында жария.

«Құсбелгілер тобында» қосымша: Minimum/Maximum checked number — белгіленген нұсқалардың минималды және максималды саны, қате мәтіндерімен (Minimum/Maximum checked error message). Максимумқа жеткенде қалған нұсқалар автоматты деактивацияланады.

«Ажыратқышта (Радио)»: таңдалған нұсқаны қайта шеруде таңдау алынады (респондент шеруден кейін сұрақты жауапсыз қалдыра алады — мұндай болмауы тиіс болса «Міндеттіні» қолданыңыз).

Ашылмалы тізім (Select)

Деректер көзі
ҚасиетСипаттама
Деректер көзінің түрі (dataSrc)Values — қолмен берілген тізім (метка/мән); URL — сыртқы көзден JSON, платформа сөздіктерін қоса /api/v1/dictionaries/{код}; JSON — массивті тікелей параметрге қою; Custom — JavaScript-функция Жетілдірілген. SuraqHub-та «Ресурс» режимі қолданылмайды.
Data Source URLНұсқалар JSON-массивінің мекенжайы. Анықтамалықтар үшін — Runtime Dictionary API renderer-і.
Data Source Raw JSONПараметрдің өзінде JSON форматындағы нұсқалар массиві.
Сақтау өрісі (Value Property)JSON элементінің қай өрісі мән деп есептеледі (мысалы, code), ал қайсысы подпись (шаблон арқылы). Бос қалдырсаңыз — жауапқа объект түгел сақталады.
Data Path (selectValues)JSON оралған болса, жауап ішіндегі массивке жол (мысалы, data.items).
ID Path / Select FieldsИдентификатор өрісі және қайтарылатын өрістер тізімі (серверлік көздер үшін).
Нұсқаның көрсету шаблоны (template)Нұсқа жолының HTML-шаблоны (элементтің бірнеше өрісін көрсетуге болады).
Сақтау түрі (dataType)Сақталатын мәнді келтіру: жол, сан, boolean, объект.
Бірнеше мәнге рұқсат ету (multiple)Көптаңдау; деректерде — массив.
Unique OptionsНұсқалардың қайталануларын жасыру.
Widget TypeІздеуі бар заманауи тізім (Choices) немесе HTML5-тің нативті <select>-і.
Серверлік сүзгілеу және іздеу (URL-көздері үшін)
ҚасиетСипаттама
Search Query NameІздеу тіркесі қойылатын query-параметрдің атауы.
Search request delayӘр символда сұрау жібермеу үшін іздеу сұрауын жіберместен бұрынғы кідіріс (секундпен, әдепкі 0.3). Мысалы, URL …/dictionaries/orgs + q параметрі + «салық» тіркесі → …/dictionaries/orgs?q=салық сұрауы.
Minimum Search LengthІздеу басталмай тұрған тіркестің минималды ұзындығы.
Enable Static SearchБұрын жүктелген тізім бойынша іздеу (серверге сұраусыз).
Use exact searchБұлыңғыр іздеудің орнына дәл сәйкестік.
Search ThresholdІздеудің «бұлыңғырлық» табалдырығы: 0.0 — тек дәл сәйкестіктер, 1.0 — бәрі сәйкеседі; әдепкі 0.3.
Filter Query / Sort QueryСүзгілеу мен сұрыптаудың қосымша query-параметрлері. Сұрыптау синтаксисі: created — өсу бойынша, -created — кему бойынша, data.field_name — жауап өрісі бойынша (минус — кему бойынша).
Request Headers (сұрау тақырыптары)URL-көзі үшін еркін тақырыптар (мысалы, сыртқы API токені). Жетілдірілген
LimitЖүктелетін нұсқалар санының шектеуі.
Disable limiting responseСұрауда limit/skip жібемеу (барлығын жүктеу).
Lazy Load DataНұсқаларды форма жүктелгенде емес, тізім ашылғанда ғана сұрау.
Disable Options Refresh When ScrollingТізімді скроллдағанда нұсқаларды қосымша жүктемеу.
Мінез-құлық және интеграциялар
ҚасиетСипаттама
Refresh Options On / On BlurБасқа өріс өзергенде/одан шыққанда нұсқаларды қайта жүктеу (каскадты тізімдер: ел → қала).
Clear Value On Refresh OptionsТізім жаңартылғанда таңдалған мәнді түсіріп тастау.
Өріс ішіндегі кеңес (Placeholder)Бос тізімнің мәтіні («— таңдаңыз —»).)
Read Only ValueТек оқу режимінде подписьтің орнына «шикізат» мәнді көрсету.
Choices.js options (customOptions)Тізімнің шикі JSON-конфигурациясы. Жетілдірілген
Add Resource / Add Resource Label, Save as referenceКірістірілген ресурс қоймасының жазбаларын жасау. SuraqHub-та қолданылмайды.
«Тек тізімдегі нұсқаларға рұқсат етіледі» тексерісі (Only available items)Тізімде жоқ мәндерге тыйым салу (анықтамалық өрістер үшін ұсынылады).
Базада бірегей мәнЖауаптың бірегейлігін серверлік тексеру.

Күні және уақыты

Барлық параметрлері
ҚасиетСипаттама
Күн / уақыт таңдауын қосуЖеке ажыратқыштар: күн өрісі, уақыт өрістері немесе екеуі де.
Күнді көрсету форматыФормат маскасы (әдепкі yyyy-MM-dd hh:mm a, мысалы dd.MM.yyyy); пайдаланушының енгізуін де анықтайды. Мән әрқашан ISO 8601-де сақталады — сүзгілеу мен есептілікке ыңғайлы.
Allow Manual InputКүнді пернетақтадан қолмен енгізу (әдепкі қосулы); өшіресеңіз — тек күнтізбеден таңдау.
Use Locale SettingsРеспондент браузерінің локалы бойынша формат.
Display in Timezone / Select TimezoneСақталған мәнді қай сағаттық белдеуде көрсету: көруші локалысында, жіберілген белдеуде, тізімдегі белгілі бір белдеуде немесе UTC. Аймақаралық формалар үшін.
Default DateӘдепкі күн; moment-өрнектерді қолдайды, мысалы moment().subtract(10, 'days') — «10 күн бұрын». Жетілдірілген
Minimum Date / Maximum DateРұқсат етілген күндер диапазоны (туған күндер, қабылдау кезеңдері). «Use Input…» ажыратқыштары шекараларды moment-өрнекпен беруге мүмкіндік береді. Жетілдірілген
Disable weekends / Disable weekdaysДемалыс күндерін немесе, керісінше, жұмыс күндерін тыйым салу.
Disable specific dates(yyyy-MM-dd) форматындағы немесе (yyyy-MM-dd - yyyy-MM-dd) диапазонындағы күндердің «қара тізімі».
Disabling dates by a functionКүндерге тыйым салатын JS-функция, мысалы date.getDay() === 0 || date.getDay() === 6 — барлық жексенбі мен сенбі. Жетілдірілген
Hour Step Size / Minute Step SizeУақыт селекторындағы сағат пен минут жебелерінің қадамы.
12-сағаттық формат (AM/PM)Уақыттың 12-сағаттық көрінісі.
Flatpickr options (customOptions)Күнтізбенің шикі JSON-конфигурациясы. Жетілдірілген
Бірнеше мәнге рұқсат ету (multiple)Күндер тізімі.

Түйме

Барлық параметрлері
ҚасиетСипаттама
Әрекет (Action)Жіберу (Submit) — форманы жіберу; Күйде сақтау — жобаны (draft) күй атауымен валидацияны тексерместен сақтау («Жобаны сақтау» түймесі); Қалпына келтіру (Reset) — барлық өрістерді бастапқы күйге қайтару; Оқиға (Event) — форма логикасы үшін оқиға іске қосу; URL — сабмишнді көрсетілген мекенжайға жіберу; Өз логикасы (Custom) — JavaScript-өңдеуші Жетілдірілген.
Тақырып (Label) / МәнТүймедегі мәтін және деректердегі басудың техникалық мәні.
ТемаТүс стилі: primary, secondary, info, success, warning, danger, link.
Өлшем / Block ButtonТүйменің өлшемі және контейнердің толық еніне созылуы.
Left Icon / Right IconМәтіннің сол/оң жағындағы белгішелер (белгіше CSS-классы, мысалы bi bi-send).
Формада қателер болса блоктау (disableOnInvalid)Формада валидация қателері болғанда түйме белсенді емес.
Show ValidationsБасқанда форманың барлық валидация қателерін көрсету.
Save On EnterEnter пернесімен форманы жіберу.
ShortcutБасудың ыстық пернесі.
OAuth ProviderСыртқы OAuth-провайдер арқылы кіру. SuraqHub-та қолданылмайды — аутентификация жарияланым деңгейінде.

Файл және Фото / Видео

Барлық параметрлері

«Фото / Видео» — бұл Display as image(s) алдын ала орнатылған және image/*,video/* шаблоны бар сол бір «Файл» компоненті. Жүктеу әрқашан ClamAV тексерісі бар платформаның қорғалған файлдық шлюзі арқылы жүреді.

ҚасиетСипаттама
Storage / жүктеу URL-іҚойма түрі және жүктеу мекенжайы — платформамен конфигурацияланған. Қолмен өзгертпеңіз.
Рұқсат етілген файл форматтарыРұқсат етілген түрлер шаблоны: .pdf,.docx, image/*, application/*. Бос — кез келген файлдар.
Файлдың минималды / максималды өлшеміБайтпен немесе суффикспен шектеулер (мысалы, 10MB). Жалпы максимум «Жүйе параметрлерінде» орнатылады.
Бірнеше мәнге рұқсат ету (multiple)Бір өріске бірнеше файл жүктеу.
Display as image(s)Сілтемелер тізімінің орнына сурет миниатюраларын көрсету.
Image SizeСуреттердің алдын ала көрініс өлшемі.
Enable web camera / Webcam WidthҚұрылғы камерасынан түсірілімді тікелей формаға алу.
Enable device captureМобильді құрылғыларда түсірілім режимінде камера/микрофонды тікелей ашу.
Upload OnlyТек жүктеу: формадан жүктіп алуға тыйым (файлдар операторларға File API арқылы қолжетімді).
Private DownloadАвторизациясы бар POST-сұраумен жүктіп алу (қорғалған файлдар үшін).
Directory / File Name TemplateҚойма каталогы (/-мен аяқталуы тиіс) және жүктелетін файл атауының шаблоны; платформамен реттеледі.
File form-data keyЖүктеу кезіндегі multipart-сұраудың өріс атауы; платформамен бекітілген.
Use the S3 Multipart Upload API / Part SizeҮлкен файлдарды тікелей S3-ке көпбөлікті жүктеу. SuraqHub-та қолданылмайды — жүктеу шлюзі өзіміздікі.

Деректер торы (Кесте)

Барлық параметрлері

Тор бағандары — ішіне сүйреп әкелінген кез келген компоненттер. Деректерде және жүктеуде тор объектілер массиві ретінде сақталады.

ҚасиетСипаттама
Number of RowsФорма жүктелгенде қосылатын жолдар саны.
Initialize EmptyПайдаланушы қоспайынша бірде-бір жол көрсетпеу.
Disable Adding / Removing RowsЖол қосу/жою түймелерін жасыру (бекітілген кесте).
Conditional Add ButtonЖол қосу түймесі көрсетілетін шарт. Жетілдірілген
Add Another TextЖол қосу түймесіндегі өз жазуы.
Add Another PositionҚосу түймесінің орналасуы (жоғарыда/төменде/екеуі де).
Allow ReorderРетті өзгерту үшін жолдарды сүйреп ауыстыру.
Equal column widthАвто-таңдаудың орнына бірдей енді бағандар.
Enable Row Groups / Hide Group on Header ClickЖолдарды өрнек бойынша топтастыру және тақырыпты шеруде топтарды жию. Жетілдірілген
Мин./макс. жолдар (валидация)Толтырылған жолдар санының шектеуі. Минимумқа жеткенде жол жою түймесі жасырылады, максимумға жеткенде — қосу түймесі.

Динамикалық кесте (EditGrid)

Барлық параметрлері

«Деректер торының» туысы: әрбір жол — ашылатын форма (әдепкіде модальді терезеде өңдеу). Көп өрісті блоктарға жарамды: білім, еңбек өтіні, өтініштер.

ҚасиетСипаттама
Display as ModalЖолды модальді терезеде қосу/өңдеу (әдепкі) немесе жердегі инлайн-өңдеу.
Inline EditingӨңдеу режиміндегі өзгерістер жолды растау түймесінсіз бірден форма жауабына сақталады.
Open First Row when EmptyКесте бос болғанда бірінші жол бірден толтыруға ашық тұрады.
Disable Adding / Removing RowsЖол қосу/жою түймелерін жасыру (бекітілген жиын).
Conditional Add ButtonЖол қосу түймесінің көрсету шарты. Жетілдірілген
Add Another Text / Save Row Text / Remove Row TextЖол қосу, сақтау және жою түймелеріндегі өз жазулары.
Header / Table Header / Row / Table Row / Footer TemplateҚарау режиміндегі тақырыптың, жолдың және астыңғы бөліктің HTML-шаблондары (мысалы, жолды «Аты-жөні — лауазым» бір жолмен көрсету). Жетілдірілген
Row CSS ClassӨңделетін жол орамының қосымша CSS-классы. Жетілдірілген
Enable Row DraftsӨрістері валидациядан өтпесе де жол-жобаны (draft) сақтауға рұқсат ету.
Мин./макс. жолдар (валидация)Деректер торындағыдай: түймелер лимиттер шекарасында өздері жасырынады.

Мекенжай

Барлық параметрлері

Екі режимі бар мекенжай өрісі: сыртқы гео-сервистің автокеңестері немесе қолмен құрылымдалған енгізу. Сыртқы картографиялық API-ге қолжетімдігі жоқ корпоративтік желілер үшін қолмен режимін қолданыңыз.

ҚасиетСипаттама
Enable Manual ModeМекенжайды қолмен енгізуге рұқсат ету (гео-сервиссіз). Ішкі желілер үшін сенімді нұсқа.
Switch To Manual Mode Label«Қолмен енгізу» ажыратқышының подписі.
Disable Clear IconМәнді жедел тазарту белгішесін жасыру.
ProviderАвтокеңестер провайдері (Google, Azure Maps т.б.). Кілтті және сервистің респондент желісінен қолжетімділігін талап етеді.
API Key / Subscription KeyСәйкес провайдерлердің кілттері.
URL / Query Property / ParamsӨз гео-сервисіңіз: іздеу мекенжайы, іздеу тіркесі бар query-параметрдің атауы, JSON-объект ретіндегі қосымша параметрлер. Жетілдірілген
Response Property / Display Value PropertyЖауаптағы мекенжайлар массивіне жол және нұсқаны көрсету өрісі. Жетілдірілген
Manual Mode View StringҚолмен енгізудегі мекенжай жолының шаблоны. Жетілдірілген
Өріс ішіндегі кеңес / Бірнеше мәнге рұқсат ету / Әдепкі мәнҚарапайым мәтіндік өрістердегідей.

Валюта (Сома)

Тек арнайы параметрлер

Ақшалай маскасы бар сандық өрістің түрі: мыңдық бөлгіштер автоматты қойылады. Мәтіндік енгізудің жалпы қасиеттері (маскалар, префикс/суффикс, енгізуді жасыру) — мәтіндік өрістердегідей.

ҚасиетСипаттама
ВалютаВалюта таңдауы — өрістегі символ-префиксті және соманың көрсету форматын анықтайды.
Префикс / СуффиксСома айналасындағы қосымша мәтін (мысалы, «теңге»); валюта өз символын бұрыннан қояды.
Минимум / Максимум / Бүтін сан (валидация)Сома диапазоны және тиындарға тыйым — «келісім сомасы» сияқты өрістер үшін.

Цифрлық қолтаңба

Тек арнайы параметрлер

Тышқанмен немесе стилустың қолдан жасалған қолтаңба; форма жауабында сурет ретінде сақталады. ЭЦП-мен (Ncalayer) шатастырмаңыз — криптографиялық қолтаңба жарияланым параметрлерімен қосылады.

ҚасиетСипаттама
Width / HeightҚолтаңба полотносының өлшемдері.
Keep Overlay Aspect RatioАлдын ала көрініс полотно пропорцияларын сақтайды.
Background Color / Pen ColorПолотно фонының түсі және қалам түсі.
Footer LabelПолотно астындағы мәтін (мысалы, «Өтініш берушінің қолтаңбасы»).

Тегтер

Тек арнайы параметрлер

Мәндер тізімін «чиптермен» енгізу (әрбір мән — жеке тег); жауапта жолдар массиві сақталады.

ҚасиетСипаттама
Delimiter (бөлгіш)Қай символ бір тегті екіншісінен бөледі (үтір, бос орын, Enter).
Max TagsТегтердің максималды саны.
Store As (Storeas)Массивті сақтау форматы: бөлгіштері бар жол немесе шынайы массив. Жетілдірілген
Әдепкі мәнАлдын ала толтырылған тегтер.

Тәжірибелік сценарийлер How-To

Типтік міндеттердің дайын рецепттері: қажетті форма мінез-құлқын алу үшін қандай компоненттер мен параметрлерді біріктіру керек.

📋 1-сценарий. Маска мен тексерісі бар ЖСН/БСН өрісі

  1. Мәтіндік өрісті қосыңыз, «ЖСН/БСН» деп атаңыз.
  2. «Көрсетілуде» Енгізу маскасын 999999999999 — дәл 12 цифр, және Браузердің автотолтыруын = off орнатыңыз.
  3. «Валидация қойындысында»: Міндеттіні қосыңыз, Тұрақты өрнекті ^\d{12}$ және түсінікті қате мәтінін беріңіз: «ЖСН/БСН 12 цифрдан тұрады».
  4. «API қасиеттерінде» өріс кілтін тексеріңіз — мысалы, iin_bin: осы атаумен мән есептерге мен вебхуктарға кетеді.

Нәтиже: респондент әріптер немесе артық цифрлар енгізе алмайды, ал сервер қате ұзындықты форманы бағдарламалы жібергенде де қабылдамайды.

🗺 2-сценарий. «Облыс → Қала» каскадты тізімдері

  1. Екі Ашылмалы тізім жасаңыз: «Облыс» және «Қала».
  2. Екеуіне де Деректер көзінің түрі = URL және анықтамалық мекенжайын (өз REST-эндпоинтыңыз немесе платформа сөздігі /api/v1/dictionaries/{код}) беріңіз.
  3. «Қала» тізімінің Refresh Options On өрісінде «Облыс» компонентін таңдаңыз — қала тізімі облыс ауысықанда қайта жүктеледі.
  4. Clear Value On Refresh Options қосыңыз — облыс ауысықанда бұрын таңдалған қала түсіп кетеді (әйтпесе бөтен облыстың қаласы қалып қояды).
  5. Қаланың URL-көзінде таңдалған облысты параметрмен беріңіз: ?region={{ data.region }} — сонда сервер тек сәйкес қалаларды қайтарады.

Анықтамалықтар форма жүктелгенде емес, ашылғанда ғана жүктелуі үшін екі тізімде де Lazy Load Data қосыңыз.

✅ 3-сценарий. Деректерді өңдеуге келісім құсбелгісі

  1. «Жеке деректерді өңдеуге келісемін» меткасы бар Құсбелгіні (Чекбокс) қосыңыз.
  2. «Валидация қойындысында» Толтыруға міндеттіні қосыңыз және қате мәтінін беріңіз: «Жеке деректерді өңдеуге келісім талап етіледі».
  3. Құсбелгіні жіберу түймесінің алдындағы соңғы өріс етіп қойыңыз; саясат сілтемесін құсбелгінің үстінде Мәтіндік блок (Контент) арқылы қосыңыз.

Құсбелгіге «Әдепкі мән = қосулы» бермеңіз: келісім саналы әрекет болуы тиіс.

💾 4-сценарий. «Жобаны сақтау» түймесі

  1. Негізгі жіберу түймесінің қасына Түймені қосыңыз.
  2. «Әрекетте» Күйде сақтауды таңдап, күй атауын көрсетіңіз, мысалы draft.
  3. Show Validations пен Формада қателер болса блоктауды өшіріңіз — жоба міндетті өрістер толтырылмаса да сақталуы тиіс.
  4. Негізгі жіберу түймесінен визуалды ерекшеленуі үшін түйме темасын «secondary» етіп беріңіз.

Периодтық формалар үшін жобалар «Ағымдағы есепті жалғастыру» параметрімен бірге жұмыс істейді — респондент сауалнаманы кезең ішінде толықтыра алады. Толығырақ: Периодтық есептілік.

👨‍👩‍👧 5-сценарий. Лимиттері бар «Отбасы мүшелері» кестесі

  1. Деректер торын (Кестені) «Отбасы мүшелері» қосыңыз.
  2. Ішіне өрістерді сүйреңіз: аты-жөні (Мәтіндік өріс), туған күні (Күні және уақыты), туыстық дәрежесі (сөздіктен Ашылмалы тізім).
  3. «Валидация қойындысында» Минимум/Максимум жолдарды беріңіз — мысалы, минимум 1, максимум 10.
  4. «Add Another Text»-ге «+ Отбасы мүшесін қосу» жазыңыз, «Number of Rows»-ға 1 қойыңыз.

Excel жүктеуде кестенің әрбір жолы жауапқа family_members массивінің жеке объектісі ретінде түседі — жолдар ішіндегі өріс кілттерінің бірдей болуы міндетті.

📚 6-сценарий. Платформа сөздігінен ашылмалы тізім

  1. Ашылмалы тізім жасаңыз, деректер көзі — URL.
  2. Сөздік мекенжайын көрсетіңіз: /api/v1/dictionaries/{код словаря} — деректер жазбалар анықтамалығында басқарылады, форманы қайта құрмай-ақ.
  3. Сақтау өрісін (Value Property) сөздік құрылымы бойынша беріңіз (мысалы, code), ал подписьті Нұсқаның көрсету шаблонымен реттеңіз.
  4. Респондент сөздік сыртындағы мән жібермесін десеңіз, «Тек тізімдегі нұсқаларға рұқсат етіледі» тексерісін қосыңыз.

Анықтамалық жаңартылғанда форма жаңа нұсқаларды автоматты қабылдайды — форма ревизиясы талап етілмейді.

Деректерді валидациялау және шартты логика Логика

✅ Валидация ережелері

  • Міндетті өріс (Required): өріс толтырылмаса форманың жіберілуін блоктайды.
  • Минималды / максималды ұзындық: мәтіндік өрістер үшін.
  • Тұрақты өрнектер (Regex Pattern): ЖСН/БСН, телефон нөмірлері, паспорттар мен кез келген форматтарды тексеру (қ. Валидация рецепттері).
  • Минимум / максимум: сандар мен күндер үшін.
  • Реттелетін қате хабарламалары: ереже бұзылғанда пайдаланушы көретін өз мәтіні. Форманың барлық тілінде қолдау табады.

🔀 Шартты көрінулік (Conditional Logic)

Өрістер респонденттің жауаптарына байланысты көрсетіледі немесе жасырылады. Параметр — компонент қасиеттері диалогының «Көрсету шарттары» қойындысында:

Мысал

«Көлік жүргізу куәлігінің нөмірін көрсетуіңіз» өрісі тек «Автомобиль бар-жоғы» ажыратқышында «Иә» жауабы таңдалғанда ғана көрсетіледі.

Жетілдірілген режимде JSONLogic-шарттар қолжетімді — бірнеше өріс бойынша құрама ережелер, сандар мен күндерді салыстырулар, кірістірілген тармақталу.

Жетілдірілген режим Advanced

Тәжірибелі форма әзірлеушілеріне арналған режим. Менеджердің «Жүйе параметрлері» бөлімінде қосылады — «Жетілдірілген режим» құсбелгісі (JSON, PDF және күрделі логикаға толық қолжетімділік).

Не ашылады

  • Палитраның «Жетілдірілген» және «Деректер» категориялары: мамандандырылған өрістер және деректер контейнерлері.
  • Компоненттердегі «JSON» түймесі: кез келген өрістің JSON-схемасын тікелей өңдеу.
  • Компонент қасиеттері диалогындағы «Логика» қойындысы (төменде қараңыз).
  • Есептелетін мән: басқа жауаптардан өріс мәнін автоматты есептейтін JavaScript-өрнек (мысалы, кесте өрістерінің қосындысы).
  • Кастомды JS-валидация: мәнді JavaScript-функциямен еркін тексеру.
  • JSONLogic: декларативті форматтағы құрама көрінулік және валидация шарттары.
  • Мәннің серверлік қайта есептелуі және есептелетін өрістерді қолмен қайта анықтауға рұқсат.

Айнымалылары мен код мысалдары бар JS-параметрлердің толық тізбесі — Компоненттердің JavaScript-қасиеттері бөлімінде.

«Логика» қойындысы

Кеңейтілген логика «триггер болғанда → әрекетті орындау» түріндегі ережелермен сипатталады:

  • Триггерлер: өріс бойынша қарапайым шарт, JSONLogic-өрнек немесе JavaScript-функция.
  • Әрекеттер: компонент қасиетін өзгерту (мысалы, өрісті міндетті ету), күйді өзгерту, схеманың бір бөлігін біріктіру (merge), еркін код орындау.

«Егер несие сомасы 1 000 000-нан асса — кепіл берушілер блогын көрсету және ЖСН өрісін міндетті ету» текті сценарийлер осылай жүзеге асырылады.

⚠️ Жауапкершілік

Кастомды JavaScript пен JSON-редактор респондент браузерінде орындалады: кодтағы қате форманың көрінісін немесе жіберілуін бұзуы мүмкін. Жетілдірілген логиканы қосқаннан кейін форманы жарияланымның барлық тілдерінде «Алдын ала көріністе» міндетті түрде тексеріңіз.

Компоненттердің JavaScript-қасиеттері Жетілдірілген

Өрістердің JavaScript-коды қабылдайтын бірқатар параметрлері бар: есептелетін мәндер, кастомды валидация, JS-шарттар, деректер көздері және логика әрекеттері. Олардың бәрі тек Жетілдірілген режимде қолжетімді.

Қарапайым шартпен немесе тұрақты өрнекпен шешуге болатынды солармен шешкен дұрыс: JS-коды «қауіпсіз бағалаумен» орындалады және жиі қолданылғанда форманы баяулатады.

Қолжетімді айнымалылар (жалпы контекст)

Барлық JS-нүктелерде бірдей айнымалылар қолжетімді:

АйнымалыМазмұны
dataФорманың енгізілген барлық деректері (объект: өріс кілті → мән).
rowАғымдағы жолдың деректері — Деректер торы, Динамикалық кесте және Контейнер ішінде.
formФорманың толық JSON-ы.
submissionСабмишннің толық объектісі.
componentАғымдағы компоненттің JSON-ы.
instanceАғымдағы компоненттің данасы (өріс API-і).
valueКомпоненттің ағымдағы мәні.
momentКүндермен жұмыс кітапханасы (мысалы, moment().subtract(10, 'days')).
_Lodash.
utils / utilФормалармен жұмыс істеуге арналған платформа утилиттері.

Басқа өрістерге олардың Property Name кілті бойынша («API қасиеттері» қойындысы), ал Ажыратқыштарда, Тізімдерде және Құсбелгілер топтарында — нұсқа меткасының орнына оның мәні бойынша сілтеме жасаңыз.

JavaScript-тің барлық кіру нүктелері

Параметр (қай жерде)Не жазылады
JSON-көрсету шарты
«Көрсету шарттары» қойындысы
show =-ден басталатын логикалық өрнек. Мысал: өріс тек жалғыз/жесір әрі табысы 45 000-нан төмен болғанда көрінеді:
show = (data.income < 45000) &&
  (data.maritalStatus == 'single' || data.maritalStatus == 'widowed');
Кастомды әдепкі мән (JS)
«Деректер» қойындысы
Форма жүктелгенде әдепкі мәнді есептейді, мысалы күнді алдын ала толтыру: value = moment().format('DD.MM.YYYY');
Есептелетін мән (JS)
«Деректер» қойындысы
value-ге меншіктеу; бастапқы өрістер өзергенде қайта есептеледі. Кесте жолдары бойынша қосынды мысалы:
value = (data.items || [])
  .reduce((sum, row) => sum + (Number(row.amount) || 0), 0);
Қасында: «Серверде есептеу», «Қолмен өзгертуге рұқсат ету».
Кастомды JS-валидация
«Валидация» қойындысы
valid =-ден басталатын өрнек; өрістің ағымдағы мәні input айнымалысында; true — өріс валидті, жол — қате мәтіні. Email растау мысалы:
valid = (input === data.email)
  ? true : 'Адреса электронной почты не совпадают';
«Javascript» триггері
«Логика» қойындысы
Ереженің жұмыс істеу шарты — көрсету шарттарындағыдай контекст; логикалық мән қайтарады.
«Мән (Javascript)» әрекеті
«Логика» қойындысы
Триггер жұмыс істегенде өріс мәнін өзгертеді; row, data, component және result қолжетімді.
«Custom Action (Javascript)» әрекеті
«Логика» қойындысы
Оқиға бойынша еркін код: блоктарды жасыру/көрсету, бірнеше өрісті өзгерту, форма оқиғасын шақыру.
Түйменің өз логикасы (Custom)
«Түйме» компоненті, «Custom» әрекеті
Түйме басылғанда орындалатын код — мысалы, өрістер тобын валидациялау және диалог көрсету.
Кастомды нұсқалар көзі
Ашылмалы тізім, «Custom» көзі
Тізім нұсқаларын форма деректерінен немесе сыртқы сұраудан толтырады (Promise қайтаруы мүмкін):
values = [
  { label: 'Опция A', value: 'a' },
  { label: 'Опция B', value: 'b' }
];
Шартты жол қосу түймесі
Деректер торы / Динамикалық кесте
«+ Жол қосу» түймесі көрсетілетін шарт (JS немесе JSONLogic) — мысалы, белгілі бір өтініш түрі үшін 5 жолдан аспайды.
💡 Жақсы тәжірибелер
  • Деректердің бар-жоғын тексеріңіз (data.items || []): өріс бос немесе жасырын болуы мүмкін.
  • Қарапайым шарт жеткілікті жерде JS қолданбаңыз — бұл жылдам әрі сенімдірек.
  • Форманы «Алдын ала көріністе» барлық тілдерде және бос мәндерде тексеріңіз.
  • Есте сақтаңыз: код респондент браузерінде орындалады — оған құпиялар салмаңыз және оны деректердің жалғыз қорғанысы ретінде қабылдамаңыз (серверлік валидация міндетті).

Валидация рецепттері Үлгілер

«Валидация (Тексеру)» қойындысы → «Тұрақты өрнек» өрісіне арналған дайын тұрақты өрнектер. Түсінікті қате мәтінін де көрсетіңіз.

Формат Тұрақты өрнек Түсіндірме
ЖСН / БСН ^\d{12}$ Дәл 12 цифр.
ҚР мобильді нөмірі ^\+7\d{10}$ +7XXXXXXXXXX форматы. 8XXXXXXXXXX форматы үшін ^8\d{10}$ қолданыңыз.
Электрондық пошта кірістірілген «Электрондық пошта (Email)» компонентін қолданыңыз — форматты тексеру бұрыннан қосулы.
Тек әріптер мен бос орындар ^[А-Яа-яЁёA-Za-z\s-]+$ Цифрлар мен арнайы символдарсыз аты-жөні.
Құжат нөмірі ^[A-Z0-9]{8,12}$ Бас әріп латын әріптері мен цифрлар, 8–12 символ.
Банктік карта нөмірі (маска) ^\d{4}(\s?\d{4}){3}$ 16 цифр, топтар арасында бос орындар болуы мүмкін.
⚠️ Жеке деректер

Қажеттіліксіз ЖСН, паспорт деректері мен карта реквизиттерін сұрамаңыз: мұндай өрістері бар жарияланымның мағыналы құқықтық негізі және шектеулі респонденттер шеңбері (рөлдер бойынша қолжетімділік) болуы тиіс.