Добавление полей формы
========================

После выполнения разметки формы можно переходить к добавлению полей заявки.
Поля добавляются в соответствии со структурой данных ордера.

Для каждого поля на форме используется определенный тип компонента,
в зависимости от типа данных.



Общий принцип добавления полей
------------------------------

Добавление любого поля на форму выполняется по одному и тому же принципу:

1. Выбирается нужная ячейка таблицы.
2. В панели **«Компоненты»** выбирается необходимый компонент.
3. Компонент добавляется в выбранную ячейку.
4. В свойствах компонента выполняется его настройка.

Сначала рекомендуется добавить **названия полей**, а затем — компоненты
для ввода данных. Такой подход упрощает и ускоряет работу.


**Здесь мы рассмотрим создание полей на нескольких примерах прямо из ордера.**

Поле 1. Порядковый номер заявки
-------------------------------

Первым добавляется поле с порядковым номером заявки.

В левой ячейке таблицы добавляется компонент **«Неизменяемый текст»**,
который используется для отображения названия поля.

В поле «Надпись» указывается название, например
«Порядковый номер заявки». При необходимости добавляется перевод.

.. figure:: ../resources/img/field_label_static_text.png

   Название поля с использованием компонента «Неизменяемый текст»

В правой ячейке добавляется компонент **«Номер»** из раздела
**«Специальные»**.

Данный компонент будет использовать шаблон номера,
к созданию которого мы перейдем позже.

.. figure:: ../resources/img/field_counter.png

   Компонент «Номер» для порядкового номера заявки



Добавление строк в таблицу
--------------------------

Для добавления следующего поля необходимо добавить новую строку в таблицу.

Добавление строки выполняется с помощью стрелки **«вниз»**,
расположенной внизу таблицы.

.. figure:: ../resources/img/add_table_row.png

   Добавление новой строки в таблицу


Поле 2. Номер заказа
--------------------

Для поля «Номер заказа» в левой ячейке добавляется компонент
**«Неизменяемый текст»** с соответствующим названием.

В правой ячейке добавляется компонент **«Однострочное поле»**
из раздела **«Текстовые элементы»**.

Компонент «Однострочное поле» используется для ввода и отображения
произвольного текстового значения в одну строку.

.. figure:: ../resources/img/field_text_input.png

   Компонент «Однострочное поле»



Настройки текстового поля
-------------------------

Для компонента «Однострочное поле» доступны следующие настройки:

* **Обязательное поле** — делает поле обязательным для заполнения;
* **Заблокировать от изменений** — запрещает пользователю изменять значение;
* **Шифровать данные** — шифрует введенные значения;
* **Маска ввода** — ограничивает формат вводимых данных;
* **Плейсхолдер** — отображает подсказку внутри пустого поля.

В данном случае поле помечается как обязательное и блокируется
от изменений пользователем, так как значение будет заполняться системой.


Поле 3. Статус заявки
---------------------

Поле «Статус заявки» имеет тип данных **«Справочник»**.

Для данного поля используется компонент **«Выпадающий список»**
из раздела **«Элементы выбора»**.

.. figure:: ../resources/img/field_dropdown.png

   Компонент «Выпадающий список»

Настройка возможных значений выполняется во вкладке **«Элементы»**.

Список значений может быть:

* создан вручную с помощью кнопки «Добавить ряд данных»;
* выбран из уже существующих справочников системы.

В режиме заполнения пользователю отображаются значения из столбца
«Наименование», а системным значением является значение из столбца
«Значение».


Продолжение добавления полей
----------------------------

Аналогичным образом на форму добавляются остальные поля заявки,
описанные в ордере.

Для каждого поля:

* выбирается соответствующий тип компонента;
* добавляется название поля;
* настраиваются свойства компонента в соответствии с типом данных.

После добавления всех полей форма полностью соответствует
структуре данных ордера и готова к дальнейшей настройке.

.. seealso::

   Дополнительную информацию касательно всех полей и их особенностей можно найти в официальной документации:
   http://rtd.lan.arta.kz/docs/docs-po-platforme-arta-synergy/ru/latest/form/components.html




Результат этапа
---------------

По завершении данного этапа:

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

В следующем этапе будет выполнена настройка форматов ввода
и масок для отдельных полей.

