1. Создать схему замещающего объекта
- Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
-
На панели инструментов реестра раздела нажмите Добавить —> Замещающий объект (Add —> Replacing object).
-
Заполните свойства схемы.
- Код (Code) — "Activity".
- Заголовок (Title) — "Активность" ("Activity").
- Родительский объект (Parent object) — выберите "Activity".
-
В схему добавьте колонку.
- В контекстном меню узла Колонки (Columns) структуры объекта нажмите .
-
В выпадающем меню нажмите Строка —> Строка (250 символов) (Text —> Text (250 characters)).
-
Заполните свойства добавляемой колонки.
- Код (Code) — "UsrMeetingPlace".
- Заголовок (Title) — "Место встречи" ("Meeting place").
- На панели инструментов дизайнера объектов нажмите Сохранить (Save), а затем Опубликовать (Publish).
2. Создать схему замещающей модели представления страницы активности
- Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
-
На панели инструментов реестра раздела нажмите Добавить —> Замещающая модель представления (Add —> Replacing view model).
-
Заполните свойства схемы.
- Код (Code) — "ActivityPageV2".
- Заголовок (Title) — "Cтраница редактирования активности" ("Activity edit page").
- Родительский объект (Parent object) — выберите "ActivityPageV2".
-
Добавьте локализуемую строку.
- В контекстном меню узла Локализуемые строки (Localizable strings) нажмите кнопку .
-
Заполните свойства локализуемой строки.
- Код (Code) — "MeetingPlaceCaption".
- Значение (Value) — "Место встречи" ("Meeting place").
- Для добавления локализуемой строки нажмите Добавить (Add).
- В объявлении класса модели представления в качестве зависимостей добавьте модули BusinessRuleModule и ConfigurationConstants.
-
Реализуйте условия отображения поля.
-
В свойство rules для колонки UsrMeetingPlace:
- В свойстве ruleType укажите значение BINDPARAMETER, которое задает тип бизнес-правила. Типы правил представлены перечислением BusinessRuleModule.enums.RuleType.
- В свойстве property укажите значение VISIBLE, которое устанавливает видимость колонки. Свойства бизнес-правила BINDPARAMETER представлены перечислением BusinessRuleModule.enums.Property.
- В массиве conditions укажите условия выполнения бизнес-правила. Значение колонки ActivityCategory должно быть равно конфигурационной константе ConfigurationConstants.Activity.ActivityCategory.Meeting, которая содержит идентификатор записи "Встреча" ("Meeting") справочника Категории активностей (Activity categories).
- В массив модификаций diff добавьте конфигурационный объект с настройками расположения поля Место встречи (Meeting place).
Исходный код схемы замещающей модели представления страницы активности представлен ниже.
-
- На панели инструментов дизайнера нажмите Сохранить (Save).
Результат выполнения примера
Чтобы посмотреть результат выполнения примера:
- Обновите страницу раздела Активности (Activities).
- При необходимости, в поле Категория (Category) страницы активности выберите значение "Встреча" ("Meeting")).
В результате выполнения примера поле Место встречи (Meeting place) отображается для активности категории "Встреча" ("Meeting").
Поле Место встречи (Meeting place) не отображается для другой категории активности (например, "Выполнить" ("To do")).