Специализированное администрирование > Настройка бизнес-объектов > Управление типами и атрибутами > Работа с утилитой "Управление типами и атрибутами" > Управление типами > Информационная страница типа > Вкладка "Вложенные атрибуты" > Пример правил вложенных атрибутов
  
Пример правил вложенных атрибутов
В следующем примере используется простой набор данных атрибута с ограниченными значениями.
* 
Создайте все правила вложенных атрибутов для сценария перед их использованием.
Предположим, имеется три атрибута в типе "Область": "Страна", "Регион" и "Город". Нужно создать набор правил вложенных атрибутов, чтобы значения атрибута "Страна" управляли доступными значениями атрибута "Регион", а значения атрибута "Регион" управляли доступными значениями атрибута "Город", как показано в следующей таблице:
Страна
Состояние
Город
США
Аризона
Эйвондейл
Бизби
Дуглас
Колорадо
Аламоса
Денвер
Вестминстер
Флорида
Атлантида
Джексонвилл
Майами
Австралия
Новый Южный Уэльс
Олбери
Сидней
Уоллонгонг
Индия
Гуджарат
Ахмадабад
Раджкот
Сурат
Предположим следующее.
Атрибуты "Страна", "Регион" и "Город" существуют в типе "Область".
Для каждого из атрибутов созданы глобальные перечисления с нужными значениями.
Для каждого из атрибутов с помощью существующих глобальных перечислений было создано единственное включенное ограничение списка перечисляемых значений.
Дополнительные сведения см. в разделе Перечисления и правила вложенных атрибутов.
Сначала создадим правила вложенных атрибутов для дерева вложенных атрибутов на один уровень ниже (от атрибута "Страна" к атрибуту "Регион"):
Если Страна = США, то Регион = Аризона, Колорадо, Флорида
Если Страна = Австралия, то Регион = Новый Южный Уэльс
Если Страна = Индия, то Регион = Гуджарат
Затем создадим правила, которые представляют дерево вложенных атрибутов на два уровня ниже (от атрибута "Страна" через атрибут "Регион" к атрибуту "Город"):
Если Страна = США и если Регион = Аризона, то Город = Эйвондейл, Бизби, Дуглас
Если Страна = США и если Регион = Колорадо, то Город = Аламоса, Денвер, Вестминстер
Если Страна = Австралия и если Регион = Новый Южный Уэльс, то Город = Олбери, Сидней, Уоллонгонг
Если Страна = Индия и если Регион = Гуджарат, то Город = Ахмадабад, Сурат, Раджкот
Можно создать правило, в котором ведомый атрибут будет скрыт. Например, Сингапур - это суверенный город, государство и страна. В нем нет штатов или городов.
В этом случае можно создать правило, в котором If "Страна" = "Сингапур", then "Штат" = "Является скрытым". Атрибут "Штат" не будет видим в интерфейсе конечного пользователя, если условия правила выполнены.
Можно также создать правило, в котором пользователь должен обязательно назначить значение ведомому атрибуту. Например, Сингапур не имеет штатов или городов, поэтому можно сделать обязательным предоставление значения для почтового индекса, чтобы получить некоторую дополнительную информацию о расположении.
В этом случае можно создать правило, где If "Страна" = "Сингапур", then "Почтовый индекс" = "Является обязательным". Предоставление значения для атрибута "Почтовый индекс" будет обязательным в интерфейсе конечного пользователя, если условия правила выполняются.
Дополнительные сведения о задании в правиле скрытого или обязательного атрибута см. в разделе Создание нового правила вложенного атрибута.
* 
Необходимо создать правила, которые представляют следующий низлежащий уровень в дереве, поскольку Отчет по наборам атрибутов создается путем поиска пересечения всех правил вложенных атрибутов и ограничений, определенных для атрибутов, включенных в набор атрибутов. Если эти правила не созданы, в отчете не будет учитываться, что некоторые значения для атрибута "Регион" ограничены некоторыми значениями атрибута "Страна".
Например: при отсутствии правила "Если Страна = США, то Регион = Аризона, Колорадо, Флорида" система рассматривает все значения атрибута "Регион" как допустимые для всех значений атрибута "Страна". Это истинно даже при наличии следующего правила: "Если Страна = США и если Регион = Аризона, то Город = Эйвондейл, Бизби, Дуглас", поскольку данное правило только определяет, когда значения "Эйвондейл", "Бизби" и "Дуглас" атрибута "Город" доступны для выбора. Это правило не определяет, когда значение Аризона для атрибута "Регион" доступно для выбора.
Дополнительные сведения см. в разделе Отчет по наборам атрибутов.
* 
Поведение в интерфейса пользователя "Править объект".
Предположим, что определены два правила:
Если Страна = США и если Регион = Аризона, то Город = Эйвондейл, Бизби, Дуглас
Если Страна = США и если Регион = Колорадо, то Город = Аламоса, Денвер, Вестминстер
Предположим, что уже создан объект, где Страна = США, Регион = Аризона и Город = Эйвондейл; и нужно обновить значения на Страна = США, Регион = Колорадо и Город = Денвер
При попытке правки этого объекта с использованием Страна = США и Регион = Колорадо окажется, что в выпадающем списке атрибут "Город" будет содержать названия: Аламоса, Денвер, Вестминстер и Эйвондейл. Это ожидаемое поведение, поскольку текущее значение всегда будет отображаться в выпадающем списке. Однако если выбрать Эйвондейл, система выдаст сообщение об ошибке, поскольку этот выбор не соответствует новому правилу. В данном случае значение Эйвондейл отображается только для просмотра.