Runa
Администратор
Почти в каждом проекте есть необходимость отображения одних полей в зависимости от установленных значений в других полях.
Например, в зависимости от типа лица (физическое или юридическое) требуется показывать одни данные или другие, в зависимости от состояния заказа/заявки требуется показывать данные по текущей операции, в зависимости от типа материала/продукта/товара - показывать одни свойства и скрывать другие, в зависимости от выполнения услуг или обслуживания клиента/пациента - показывать различные действия или процедуры, и т.д., и т.п.
Такая возможность есть начиная с 6-ой версии конструктора. Для поля Группы, которое даёт возможность блокировать или скрыть привязанные к ней поля, необходимо задать условие, зависимое от одного или нескольких полей:

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

При добавлении в комбинации значений, на панели записи добавляются соответствующие группы:

При включении данных второй и третьей вкладки, они становятся доступными для внесения данных:

Сохранив запись, при просмотре данных будут отображаться разрешённые группы полей:

Замечание: поле комбинации обрабатывается в условиях не так, как остальные поля. В отличии от всех остальных полей, оно может иметь несколько значений, поэтому каждый вариант обрабатывается как отдельное значение. Если надо проверить поле комбинации на включение в него двух и более значений, их надо перечислить в условии через запятую. Такой синтаксис в конструкторе Руна обрабатывается по принципу И, например:
Пример проекта в приложении.
Например, в зависимости от типа лица (физическое или юридическое) требуется показывать одни данные или другие, в зависимости от состояния заказа/заявки требуется показывать данные по текущей операции, в зависимости от типа материала/продукта/товара - показывать одни свойства и скрывать другие, в зависимости от выполнения услуг или обслуживания клиента/пациента - показывать различные действия или процедуры, и т.д., и т.п.
Такая возможность есть начиная с 6-ой версии конструктора. Для поля Группы, которое даёт возможность блокировать или скрыть привязанные к ней поля, необходимо задать условие, зависимое от одного или нескольких полей:

Можно задать подкраску для удобства восприятия информации, а в свойстве "скрытие" указывается условие в зависимости от другого поля.
Если в качестве условия используется поле переключателя с двумя значениями, то для проверки одного значения достаточно задать, например, условие равенства со вариантом, который должно скрывать группу полей:
[Поле]=нет
Но если используется поле переключателя или комбинации с тремя и более значениями, то для задания условия скрытия необходимо указывать формулу, в которой условие исключает выбор значения для отображения, например:
[Поле]!=значение
В качестве примера будет использоваться поле комбинации с тремя значениями и два поля переключателя.
Комбинация будет отвечать за показ групп полей на текущей вкладке, а поля переключателей - за отображение данных на других вкладках. Все поля на второй и третьей вкладке принадлежать к каждой своей группе, поэтому скрытие группы будет приводить к скрытию вкладки.
Исходное значение записи имеет пустое поле комбинации и переключатели, для которых по умолчанию заданы значения скрытия групп:

При добавлении в комбинации значений, на панели записи добавляются соответствующие группы:



При включении данных второй и третьей вкладки, они становятся доступными для внесения данных:


Сохранив запись, при просмотре данных будут отображаться разрешённые группы полей:

Замечание: поле комбинации обрабатывается в условиях не так, как остальные поля. В отличии от всех остальных полей, оно может иметь несколько значений, поэтому каждый вариант обрабатывается как отдельное значение. Если надо проверить поле комбинации на включение в него двух и более значений, их надо перечислить в условии через запятую. Такой синтаксис в конструкторе Руна обрабатывается по принципу И, например:
[ПолеКомбинации]=Первый
- условие наличия значения "Первый" в комбинации;[ПолеКомбинации]=Первый, [ПолеКомбинации]=Второй
- условие обязательного включения двух значений в комбинации;[ПолеКомбинации]!=Первый
- условие любого набора значений без "Первый";[ПолеКомбинации]!=Первый, [ПолеКомбинации]!=Второй
- условие любого набора значений, исключающих "Первый" и "Второй".Пример проекта в приложении.