Создать схему замещающей модели представления страницы контакта
- Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
-
На панели инструментов реестра раздела нажмите Добавить —> Замещающая модель представления (Add —> Replacing view model).
-
Заполните свойства схемы.
- Код (Code) — "ContactPageV2".
- Заголовок (Title) — "Схема отображения карточки контакта" ("Display schema - Contact card").
- Родительский объект (Parent object) — выберите "ContactPageV2".
- В объявлении класса модели представления в качестве зависимостей добавьте модули BusinessRuleModule и ConfigurationConstants.
-
Реализуйте обязательность поля.
Для этого задайте свойство rules для колонки Phone:
- В свойстве ruleType укажите значение BINDPARAMETER, которое задает тип бизнес-правила. Типы правил представлены перечислением BusinessRuleModule.enums.RuleType.
- В свойстве property укажите значение REQUIRED, которое устанавливает обязательность заполнения колонки. Свойства бизнес-правила BINDPARAMETER представлены перечислением BusinessRuleModule.enums.Property.
- В массиве conditions укажите условия выполнения бизнес-правила. Значение колонки Type должно быть равно конфигурационной константе ConfigurationConstants.ContactType.Client, которая содержит идентификатор записи "Клиент" ("Customer") справочника Типы контактов (Contact types).
Исходный код схемы замещающей модели представления страницы контакта представлен ниже.
- На панели инструментов дизайнера нажмите Сохранить (Save).
Результат выполнения примера
Чтобы посмотреть результат выполнения примера:
- Обновите страницу раздела Контакты (Contacts).
- При необходимости, в поле Тип контакта (Type) страницы контакта выберите "Клиент" ("Customer").
В результате выполнения примера поле Рабочий телефон (Business phone) является обязательным для контакта типа "Клиент" ("Customer").
При попытке сохранить контакт типа "Клиент" ("Customer"), у которого не заполнено поле Рабочий телефон (Business phone), отображается информационное сообщение.
Поле Рабочий телефон (Business phone) является необязательным для другого типа контакта (например, "Сотрудник" ("Employee").