Добавить поле на страницу записи с использованием новой колонки

Средний

Пример. Добавить поле Место встречи (Meeting place) на страницу активности. Предварительно добавить соответствующую колонку в схему объекта активности.

1. Создать схему замещающего объекта 

  1. Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
  2. На панели инструментов реестра раздела нажмите Добавить —> Замещающий объект (Add —> Replacing object).

  3. Заполните свойства схемы.

    • Код (Code) — "Activity".
    • Заголовок (Title) — "Активность" ("Activity").
    • Родительский объект (Parent object) — выберите "Activity".
  4. В схему добавьте колонку.

    1. В контекстном меню узла Колонки (Columns) структуры объекта нажмите add_button.
    2. В выпадающем меню нажмите Строка —> Строка (250 символов) (Text —> Text (250 characters)).

    3. Заполните свойства добавляемой колонки.

      • Код (Code) — "UsrMeetingPlace".
      • Заголовок (Title) — "Место встречи" ("Meeting place").
  5. На панели инструментов дизайнера объектов нажмите Сохранить (Save), а затем Опубликовать (Publish).

2. Создать схему замещающей модели представления страницы активности 

  1. Перейдите в раздел Конфигурация (Configuration) и выберите пользовательский пакет, в который будет добавлена схема.
  2. На панели инструментов реестра раздела нажмите Добавить —> Замещающая модель представления (Add —> Replacing view model).

  3. Заполните свойства схемы.

    • Код (Code) — "ActivityPageV2".
    • Заголовок (Title) — "Страница редактирования активности" ("Activity edit page").
    • Родительский объект (Parent object) — выберите "ActivityPageV2".
  4. Добавьте локализуемую строку.

    1. В контекстном меню узла Локализуемые строки (Localizable strings) нажмите кнопку scr_add_button.png.
    2. Заполните свойства локализуемой строки.

      • Код (Code) — "MeetingPlaceCaption".
      • Значение (Value) — "Место встречи" ("Meeting place").
    3. Для добавления локализуемой строки нажмите Добавить (Add).
  5. Настройте расположение поля. Для этого в массив модификаций diff добавьте конфигурационный объект с настройками расположения поля на странице.

    Исходный код схемы замещающей модели представления страницы активности представлен ниже.

    ActivityPageV2
    define("ActivityPageV2", [], function() {
        return {
            /* Название схемы объекта страницы записи. */
            entitySchemaName: "Activity",
            /* Отображение поля на странице записи. */
            diff: /**SCHEMA_DIFF*/[
                /* Метаданные для добавления на страницу пользовательского поля. */
                {
                    /* Выполняется операция добавления элемента на страницу. */
                    "operation": "insert",
                    /* Мета-имя родительского контейнера, в который добавляется поле. */
                    "parentName": "Header",
                    /* Поле добавляется в коллекцию элементов родительского элемента. */
                    "propertyName": "items",
                    /* Мета-имя добавляемого поля. */
                    "name": "UsrMeetingPlace",
                    /* Свойства, передаваемые в конструктор элемента. */
                    "values": {
                        /* Привязка заголовка поля к локализуемой строке схемы. */
                        "caption": {"bindTo": "Resources.Strings.MeetingPlaceCaption"},
                        /* Настройка расположения поля. */
                        "layout": {
                            /* Номер столбца. */
                            "column": 0,
                            /* Номер строки. */
                            "row": 5,
                            /* Диапазон занимаемых столбцов. */
                            "colSpan": 12
                        }
                    }
                }
            ]/**SCHEMA_DIFF*/
        };
    });
    
  6. На панели инструментов дизайнера нажмите Сохранить (Save).

Результат выполнения примера 

Чтобы посмотреть результат выполнения примера:

  1. Очистите кэш браузера.
  2. Обновите страницу раздела Активности (Activities).

В результате выполнения примера на страницу активности добавлено поле Место встречи (Meeting place).