Условные действия
=================

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

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

.. note::
    Условные действия не являются отдельной сущностью приложения и привязаны к конкретной форме.



Переход к разделу «Условные действия»
-------------------------------------

1. Откройте ранее созданную форму.
2. На левой панели выберите вкладку **«Условные действия»**.

.. figure:: ../resources/img/conditional_actions_tab.png

   Раздел «Условные действия» формы

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


Создание нового условного действия
----------------------------------

Для добавления условного действия выполните следующие шаги:

1. Нажмите правой кнопкой мыши по папке **«Условные действия»** и нажать кнопку **«Добавить группу действий»**.
2. В открывшемся окне латинскими буквами указать наименование условных действий.

.. figure:: ../resources/img/conditional_action_create.png

   Создание нового условного действия


В открывшейся странице нажимаем кнопку «+» для добавления условных действий

Каждое условное действие состоит из двух логических частей:

* условия (когда выполняется);
* действий (что происходит при выполнении условия).


Настройка условия
-----------------

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

1. В поле выбора компонента укажите компонент формы,
   значение которого будет проверяться.
2. Выберите тип условия (равно, не равно и т.д.).
3. Укажите значение, при котором будет соблюдаться условие.

В рамках текущего процесса в качестве условия используется
поле **«Тип заявителя»**.

Пример логики условия:

Что требуется по ордеру:

* поле **«БИН организации»** должно отображаться только при выборе типа заявителя **«ЮЛ»**
* поле **«ИИН индивидуального предпринимателя»** должно отображаться только при выборе типа заявителя **«ИП»**

Как это работает через условные действия:

Если Тип заявителя = «ЮЛ»

То показать поле «БИН организации»

Если выбран другой тип заявителя - поле скрыто.


Настройка условия
---------------------------
После нажатия на кнопку **«+»** на странице нам открывается возможность настроить нужные нам условные действия

В строке **«Если»** выбираем поле, которое будет являться условием для срабатывания действия. В нашем случае это **«Тип заявителя»**, выбираем из списка код этого поля.

.. figure:: ../resources/img/conditional_actions_setting.png

   Настройка условия


Теперь нам необходимо указать при выборе какого значения мы будем производить действие с полем. 
В нашем случае пользователь должен отметить тип заявителя **«ЮЛ»**, значит обращаемся к справочнику поля **«Тип заявителя»**

В нашем случае, вариант **«ЮЛ»** = значению **«1»**

Значит в условных действиях выбираем операнд **«=»**, а в следующем поле тип компонента выбираем **«Текстовое значение»**

И в открывшемся правом поле указываем нужное нам значение справочника.

.. figure:: ../resources/img/conditional_if.png

   Настройка условия


Настройка действия
--------------------
В строке **«То»** указываем с каким полем и что именно должно произойти

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

Значит в строке **«То»** выбираем из списка код поля **«БИН организации»** - в нашем случае это **«textbox_bin»** и выбираем из списка действие, которое должно произойти с полем. В нашем случае **«Отобразить»**

.. figure:: ../resources/img/conditional_action1.png

   Настройка действия


Для того чтобы добавить еще одно действие к тому же условию, под строкой **«То»** нажимаем на кнопку добавить **«+»**

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

.. figure:: ../resources/img/conditional_action2.png

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

Первое условное действие готово, теперь нам необходимо настроить зеркальное действия для второго варианта справочника, когда выбран Тип заявителя **«ИП»**.

Шаги создания второго условного действия аналогичны созданию первого варианта, но с другими условиями.


Проверка работы условных действий
---------------------------------

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

Для этого:

1. Перейдите в режим предварительного просмотра формы.
2. Измените значение поля, участвующего в условии.
3. Убедитесь, что соответствующие поля
   отображаются или скрываются корректно.

Если логика работает ожидаемым образом,
условные действия настроены корректно.



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

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

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

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