Создать схему замещающей модели представления страницы контакта
- Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
-
На панели инструментов реестра раздела нажмите Добавить —> Замещающая модель представления (Add —> Replacing view model).
-
Заполните свойства схемы.
- Код (Code) — "ContactPageV2".
- Заголовок (Title) — "Схема отображения карточки контакта" ("Display schema - Contact card").
- Родительский объект (Parent object) — выберите "ContactPageV2".
- В объявлении класса модели представления в качестве зависимостей добавьте модуль BusinessRuleModule.
-
Реализуйте фильтрацию значений связанных справочных полей.
-
В свойство rules для колонок City и Region:
- В свойстве ruleType укажите значение FILTRATION, которое задает тип бизнес-правила. Типы правил представлены перечислением BusinessRuleModule.enums.RuleType.
- В свойстве autocomplete укажите значение true, которое выполняет обратную фильтрацию, т. е. автозаполнение полей Страна (Country) и Область/штат (State/province) в зависимости от выбранного города.
-
В массив модификаций diff добавьте конфигурационный объект с настройками расположения полей Страна (Country), Область/штат (State/province), Город (City).
В базовой схеме страницы контакта определено правило фильтрации городов в зависимости от указанной для контакта страны. Чтобы получить возможность выбрать город из страны, которая отличается от указанной для контакта, то необходимо добавить поле Страна (Country).
Исходный код схемы замещающей модели представления страницы контакта представлен ниже.
-
- На панели инструментов дизайнера нажмите Сохранить (Save).
Результат выполнения примера
Чтобы посмотреть результат выполнения примера, обновите страницу раздела Контакты (Contacts).
В результате выполнения примера в профиль контакта на страницу контакта добавлены связанные справочные поля Страна (Country), Область/штат (State/province), Город (City).
В профиле контакта можно изменить страну контакта.
Также фильтрация выполняется в окне выбора страны.
Перечень доступных для выбора областей/штатов зависит от страны, выбранной в поле Страна (Country). Фильтрация выполняется как в поле ввода значения, так и в окне выбора области/штата.
Перечень доступных для выбора городов зависит от области/штата, выбранного в поле Область/штат (State/province). Фильтрация выполняется как в поле ввода значения, так и в окне выбора города.