Создание нового раздела
Glossary Item Box
Общие положения
Одной из типовых задач разработки является добавление нового раздела в приложение bpm’online. Для реализации этой задачи необходимо использовать Мастер разделов. При помощи мастера можно не только добавить существующий раздел в необходимое рабочее место, но и предварительно настроить отображение реестра, страницы редактирования и деталей добавляемого раздела.
Результатом работы мастера раздела будут добавленные в текущий пользовательский пакет схемы объектов, страниц и детали раздела.
Для функционирования раздела в приложении мастер раздела создает следующие схемы объектов (табл. 1) и клиентские схемы (табл. 2).
Табл. 1. Схемы объектов, создаваемые мастером разделов
Правила именования | Назначение | Родитель |
---|---|---|
[Имя объекта раздела] | Основной объект раздела | Базовый объект |
[Имя объекта раздела]Folder |
Группа объекта. Служебный объект для корректной работы группировки записей в разделе. Формирует общую структуру дерева групп раздела. |
Базовая группа (BaseFolder) |
[Имя объекта раздела]InFolder |
Объект в группе. Служебный объект для корректной работы группировки записей в разделе. Определяет связи между записями раздела и группами раздела, в которые они входят. |
Базовый элемент в группе (BaseItemInFolder) |
[Имя объекта раздела]File | Объект для детали [Файлы и ссылки] объекта раздела. | Файл (File) |
[Имя объекта раздела]Tag | Тег раздела. | Базовый тег (BaseTag) |
[Имя объекта раздела]InTag | Тег в объекте раздела. | Базовый тег в базовом объекте (BaseEntityInTag) |
Табл. 2. Клиентские схемы, создаваемые мастером раздела
Правила именования | Назначение | Родитель |
---|---|---|
[Имя объекта раздела]Section | Схема раздела | Базовая схема детали с реестром (BaseGridDetail) |
[Имя объекта раздела]Page | Схема страницы редактирования раздела | BaseModulePageV2 |
[Имя объекта раздела]Detail | Схема детали раздела |
Базовая схема раздела (BaseSectionV2) |
Мастер разделов и Пакет [Custom]
В процессе своей работы мастер разделов или мастер деталей не только создает различные схемы, но и привязывает данные к текущему пакету. Однако, если текущим пакетом является пакет [Custom], то перенести привязанные данные в другой пользовательский пакет практически невозможно. Поэтому рекомендуется в качестве текущего пакета использовать любой пользовательский пакет, но не [Custom].
К СВЕДЕНИЮ Для того чтобы поменять текущий пакет, необходимо использовать системную настройку [Текущий пакет] (CurrentPackageId). |
Последовательность добавления раздела
- С помощью мастера разделов создать раздел и добавить его в нужное рабочее место.
- Добавить небходимые колонки в схему объекта раздела и настроить их отображение в реестре, на странице редактирования и деталях.
Описание кейса
В приложение добавить рабочее место [Автосалон]. В созданное рабочее место добавить пользовательский раздел [Грузовые автомобили]. Схема объекта грузового автомобиля должна содержать обязательные для заполнения колонки:
- Название — строка.
- Владелец — справочник [Контакт].
- Организация — справочник [Контрагент].
- Цена — строка.
Алгоритм реализации кейса
1. С помощью мастера разделов создать раздел и добавить его в нужное рабочее место
Процесс настройки рабочего места подробно описан в статье "Настройка рабочих мест". Чтобы создать новое рабочее место, необходимо в поле [Название] ввести значение Автосалон и добавить группу пользователей, для которой будет доступно создаваемое рабочее место.
Описание мастера раздела и инструкции по его использованию изложены в статье "Мастер разделов". Для создания нового раздела достаточно использовать только первый шаг мастера. При этом в основной объект раздела будет добавлена колонка "Название" типа строка и будут добавлены колонки, унаследованные от базового объекта. Для первоначальной настройки раздела на первом шаге мастера разделов в поле [Код раздела] необходимо ввести значение Truck, а в поле [Заголовок] — Грузовые автомобили.
К СВЕДЕНИЮ Если работа в системе ведется с настройками по умолчанию, то при вводе значения в поле [Код раздела] возникнет сообщение о том, что значение должно начинаться с префикса Usr. Значение префикса задается в системной настройке “Префикс названия объекта”. При необходимости можно сменить значение префикса на пользовательское. |
После сохранения результатов в пользовательском пакете будут созданы все необходимые для работы раздела схемы (рис. 1).
Рис. 1. — Схемы раздела Грузовые автомобили в пользовательском пакете
2. Добавить небходимые колонки в схему объекта раздела и настроить их отображение
Существует два подхода к добавлению новых колонок в схему объекта.
Первый подход — использовать мастер разделов, а именно вкладку настройки полей страницы. При помощи мастера разделов можно создать новую колонку и сразу же добавить ее на страницу редактирования. При этом она автоматически будет добавлена в схему основного объекта раздела. Подробности настройки полей страницы редактирования записи раздела изложены в статье "Как настроить поля страницы".
Второй подход — использовать дизайнер объекта в разделе [Конфигурация] для добавления колонок в схему основного объекта раздела, а затем использовать мастер разделов для добавления колонок на страницу. Подробнее о возможностях раздела [Конфигурация] можно узнать из статьи "Раздел [Конфигурация]".
Поскольку мастер раздела задействован в любом случае, удобнее использовать первый подход.
Так как колонка [Название] создается и добавляется на страницы раздела мастером раздела автоматически, необходимо добавить оставшиеся колонки.
Для колонки [Владелец] в качестве типа колонки следует выбрать справочник "Контакт", для ее заголовка внести значение Владелец, а в название в базе данных — значение Owner. Соответственно, для колонки [Организация] следует выбрать справочник "Контрагент", установить заголовок Организация, и внести значение названия в базе данных Organization. Колонка [Цена] должна быть строчного типа, иметь заголовок Цена и название в базе данных Price.
Для всех колонок необходимо установить признак "Является обязательным".
После сохранения результатов работы мастера разделов в схему объекта Truck будут добавлены новые колонки (рис. 2), а в массив модификаций diff схемы страницы редактирования TruckPage — соответствующие им конфигурационные объекты.
Рис. 2. — Схема главного объекта раздела [Грузовые автомобили]
После добавления новых записей раздел примет вид, аналогичный показанному на рисунке 3.
Рис. 3. — Раздел [Грузовые автомобили] в рабочем месте [Автосалон]