Войти

Зависимость с ранее введёнными данными (displayOn/displayOff)

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

В конструкторе данный блок настроек выглядит так:

1.png

Под ID атрибута понимается уникальный идентификатор компонента на экране, от которого устанавливается зависимость (например, c6)

2.png

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

Значение, для которого устанавливается некая зависимость — это некоторое конкретное значение, полученное от пользователя на шаге при прохождении услуги. Это может быть отдельный символ, строка, число, а также ряд других значений. Например, SUN — это конкретное строчное значение, которое может быть использовано в другом компоненте

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

Для иллюстрации логики работы создадим два компонента StringInput (по одному на экране) и установим зависимость между ними. В первом компоненте StringInput будем вводить число от 0 до 20. А в настройках второго пропишем вот такую зависимость:

3.png

В поле ID атрибута мы указали идентификатор компонента, значение которого будем сравнивать

В поле Значение для которого устанавливается некая зависимость введём число, с которым будем сравнивать значение первого компонента

В поле Описание зависимости или действия управляющего зависимостью укажем значение displayOff. Это значит, что второй StringInput будет «выключен», если первый будет равен 10. Иные числа влиять на доступность компонента не будут

В таком случае готовая услуга будет выглядеть примерно подобным образом:

displayOn/displayOff4

Следующий экран может выглядеть так:

displayOn/displayOff5

Однако если в первом компоненте StringInput ввести число 10:

displayOn/displayOff6

То на следующем экране компонент перестает быть активным и ввести текст уже невозможно. Также не отображается Заголовок компонента и иные его атрибуты

displayOn/displayOff7

Таким образом, если в первом компоненте StringInput ввести число 10, то второй компонент станет недоступным для ввода текста. При любом ином числе (от 0 до 20, кроме 10), второй компонент будет работать в стандартном режиме

Авторизуйтесь, чтобы оставить комментарий к статье