Low-code дизайнер > Создание форм / Заполнение по формуле и отображение поля 

Заполнение по формуле и отображение поля

Значения полей в карточке приложения или задачи в бизнес-процессе могут вычисляться автоматически. Например, можно рассчитать и подставить в нужное поле сумму со скидкой или с НДС. Кроме того, некоторые поля можно отображать или скрывать в зависимости от заданных условий.

Эти опции становятся доступны при настройке формы в расширенном режиме. На вкладке Контекст нажмите на нужное свойство. В открывшемся окне поставьте флажки напротив опций Заполняется по формуле или Отображается при выполнении условия.

значение по формуле

Рассмотрим на примерах, как работают эти настройки.

Заполнение по формуле

начало внимание

Данная опция доступна только для полей типа Строка, Число, Деньги.

конец внимание

Если включена опция Заполняется по формуле, под ней появится поле Формула*. В нём вы можете складывать, вычитать, умножать и делить значения, используя операторы +, -, *, /. Чтобы задать приоритет математических операций, используйте круглые скобки ().

В формулу можно добавить переменную такого же типа, который задан для свойства, заполняемого по формуле. Для этого нажмите значок {+} и в открывшемся списке выберите переменную.

Так, в формулу для свойства типа Строка добавьте переменные типа Строка. Для свойства типа Число можно задать формулу, используя переменные типа Число. Если добавить в формулу переменную другого типа, возникнет ошибка валидации.

Исключением является тип Деньги. Если вы создаёте формулу для свойства этого типа, можете использовать комбинацию Деньги*Число, то есть значение поля типа Деньги можно умножить на значение поля типа Число.

Рассмотрим пример.

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

fill-in-field-2

Чтобы задать формулу для заполнения поля, откройте настройки формы заказа. На вкладке Контекст создайте свойство Сумма заказа со скидкой. В поле Тип* выберите Деньги, т. к. вычисляется общая сумма к оплате.

Поставьте флажок напротив опции Заполнять по формуле. Появится поле Формула. Нажмите значок {+} в конце строки и в открывшемся списке выберите переменную Итого типа Деньги (ссылка на последнюю колонку таблицы, в которой считается итоговая стоимость без скидки) и переменную Скидка типа Число (ссылка на поле, в котором менеджер указывает размер скидки при оформлении заказа).

В итоге формула для расчёта суммы со скидкой выглядит так:

заполнение по формуле 2

Сохраните настройки. Теперь, заполняя таблицу, сотрудник укажет товар, нужное количество позиций и размер скидки, а итоговая стоимость рассчитается автоматически.  

fill-in-field-5

Отображение при выполнении условия

Не всегда все поля в карточке приложения или задачи нужно показывать сразу. Предположим, что компания наряду с доставкой предлагает опцию самовывоза приобретенных товаров. Когда менеджер по продажам оформляет заказ, он указывает, каким именно способом клиент хочет получить покупку. Если это доставка курьером, то на форме создания заказа появится новое поле для адреса.

fill-in-field-6

Чтобы задать отображение по условию, перейдите в настройки формы заказа. На вкладке Контекст создайте свойство Адрес доставки. Поставьте флажок напротив опции Отображается при выполнении условия, а затем нажмите на появившуюся ссылку Настроить условия.

при условии 1

Откроется окно, где вы можете задать условия, при которых поле отобразится в карточке приложения. Если условия не выполнятся, поле будет скрыто.

360013448740-7

  • Поле из приложения — укажите свойство из контекста приложения;
  • Операция — задайте оператор сравнения для проверки конкретного условия;
  • Значение поля — выберите свойство или введите значение, при котором условие будет выполняться;
  • Связка — это логическая операция, которая используется для проверки нескольких условий. Если результат проверки Истина, то поле отобразится в карточке:
    • ИЛИ — результат Истина, если выполняется хотя бы одно условие;
    • И — результат Истина, если выполняются оба условия;
    • ИЛИ НЕ — результат Истина, если оба условия не выполнены;
    • И НЕ — результат Истина, если хотя бы одно условие не выполнено.

Условия проверяются в том порядке, в котором они перечислены.

Отображение поля при добавлении на форму в дизайнере интерфейсов

Вы можете вынести поле с включённой опцией Отображается при выполнении условия на форму в дизайнере интерфейсов. Оно помещается внутри виджета Строка формы, для которого задаются свои настройки видимости. Подробнее о том, какая из опций имеет приоритет для отображения поля в разных случаях, читайте в справке ELMA365 TS SDK.