Как добавить новый раздел без мастера раздела? 

Нравится

2 комментария
Лучший ответ

Ниже приведен необходимый минимум таблиц, в которых раздел нужно зарегистрировать (тестировали на 7.9.2).

1. Создать запись в таблице SysModuleEntity (таблица, где хранится информация объектах разделов):

insert into SysModuleEntity (
SysEntitySchemaUId)
values (
'AF6DD4AD-1398-4FCE-8837-78DC65AE0F9E')

где [SysEntitySchemaUId] - колонка Uid объекта раздела (например, "UsrRK") в таблице SysSchema;

2. Создать запись в таблице SysModuleEdit (страница редактирования "Page"):

​​​​​​​insert into SysModuleEdit (
SysModuleEntityId
,UseModuleDetails
,CardSchemaUId
,ActionKindCaption
,ActionKindName
,PageCaption)
values (
'8ED522AF-00E1-4595-AC13-643944B005B7'
,1
,'8B22D9BE-4BBC-4B50-80EA-AB6FBB604B7E'
,'Добавить'
,'UsrRK1Page'
,'Card schema: "RK"')

где [SysModuleEntityId] - колонка Id записи таблицы SysModuleEntity из первого этапа (проверка Select Id from SysModuleEntity Where SysEntitySchemaUId='AF6DD4AD-1398-4FCE-8837-78DC65AE0F9E')

[CardSchemaUId] - колонка Uid страницы редактирования объекта (например, "UsrRK1Page") в таблице SysSchema (проверка Select Uid,Name from SysSchema where name like '%UsrRK%'). Нам необходима схема, которая называется "Название объекта + 1Page"

[ActionKindCaption] - Название кнопки в реестре раздела;

[ActionKindName] - Название схемы страницы редактирования;

[PageCaption] - Заголовок схемы страницы редактирования в таблице SysSchema (проверка Select Uid,Name,Caption from SysSchema where name like '%UsrRK1Page%')

3. Создать запись в таблице SysModule (страница раздела "Section"):​

​​​​​​insert into SysModule (
Caption
,SysModuleEntityId
,FolderModeId
,GlobalSearchAvailable
,Code
,SectionModuleSchemaUId
,SectionSchemaUId
,Image32Id)
values (
'RK'
,'8ED522AF-00E1-4595-AC13-643944B005B7'
,'B659D704-3955-E011-981F-00155D043204'
,1
,'UsrRK'
,'DF58589E-26A6-44D1-B8D4-EDF1734D02B4'
,'B3D153C0-92EF-4A53-B868-9395C3E43516'
,'026742D9-390C-4778-BC46-9FA85C42677A')

где [Caption] - Название раздела (можно брать caption объекта раздела -

[SysModuleEntityId] - колонка Id записи таблицы SysModuleEntity из первого этапа (проверка Select Id from SysModuleEntity Where SysEntitySchemaUId='AF6DD4AD-1398-4FCE-8837-78DC65AE0F9E')

[Code] - Название объекта раздела;

[SectionModuleSchemaUId] - UId модуля SectionModuleV2 с помощью которой открывается схему раздела;

[SectionSchemaUId] - колонка Uid страницы раздела объекта (например, "UsrRK1Section") в таблице SysSchema (проверка Select Uid,Name,Caption from SysSchema where name like '%UsrRK%'). Нам необходима схема, которая называется "Название объекта + 1Section"

Обратите внимание, что код раздела (поле Code в таблице SysModule) обязательно должен совпадать с названием схемы таблицы раздела.

Ниже приведен необходимый минимум таблиц, в которых раздел нужно зарегистрировать (тестировали на 7.9.2).

1. Создать запись в таблице SysModuleEntity (таблица, где хранится информация объектах разделов):

insert into SysModuleEntity (
SysEntitySchemaUId)
values (
'AF6DD4AD-1398-4FCE-8837-78DC65AE0F9E')

где [SysEntitySchemaUId] - колонка Uid объекта раздела (например, "UsrRK") в таблице SysSchema;

2. Создать запись в таблице SysModuleEdit (страница редактирования "Page"):

​​​​​​​insert into SysModuleEdit (
SysModuleEntityId
,UseModuleDetails
,CardSchemaUId
,ActionKindCaption
,ActionKindName
,PageCaption)
values (
'8ED522AF-00E1-4595-AC13-643944B005B7'
,1
,'8B22D9BE-4BBC-4B50-80EA-AB6FBB604B7E'
,'Добавить'
,'UsrRK1Page'
,'Card schema: "RK"')

где [SysModuleEntityId] - колонка Id записи таблицы SysModuleEntity из первого этапа (проверка Select Id from SysModuleEntity Where SysEntitySchemaUId='AF6DD4AD-1398-4FCE-8837-78DC65AE0F9E')

[CardSchemaUId] - колонка Uid страницы редактирования объекта (например, "UsrRK1Page") в таблице SysSchema (проверка Select Uid,Name from SysSchema where name like '%UsrRK%'). Нам необходима схема, которая называется "Название объекта + 1Page"

[ActionKindCaption] - Название кнопки в реестре раздела;

[ActionKindName] - Название схемы страницы редактирования;

[PageCaption] - Заголовок схемы страницы редактирования в таблице SysSchema (проверка Select Uid,Name,Caption from SysSchema where name like '%UsrRK1Page%')

3. Создать запись в таблице SysModule (страница раздела "Section"):​

​​​​​​insert into SysModule (
Caption
,SysModuleEntityId
,FolderModeId
,GlobalSearchAvailable
,Code
,SectionModuleSchemaUId
,SectionSchemaUId
,Image32Id)
values (
'RK'
,'8ED522AF-00E1-4595-AC13-643944B005B7'
,'B659D704-3955-E011-981F-00155D043204'
,1
,'UsrRK'
,'DF58589E-26A6-44D1-B8D4-EDF1734D02B4'
,'B3D153C0-92EF-4A53-B868-9395C3E43516'
,'026742D9-390C-4778-BC46-9FA85C42677A')

где [Caption] - Название раздела (можно брать caption объекта раздела -

[SysModuleEntityId] - колонка Id записи таблицы SysModuleEntity из первого этапа (проверка Select Id from SysModuleEntity Where SysEntitySchemaUId='AF6DD4AD-1398-4FCE-8837-78DC65AE0F9E')

[Code] - Название объекта раздела;

[SectionModuleSchemaUId] - UId модуля SectionModuleV2 с помощью которой открывается схему раздела;

[SectionSchemaUId] - колонка Uid страницы раздела объекта (например, "UsrRK1Section") в таблице SysSchema (проверка Select Uid,Name,Caption from SysSchema where name like '%UsrRK%'). Нам необходима схема, которая называется "Название объекта + 1Section"

Обратите внимание, что код раздела (поле Code в таблице SysModule) обязательно должен совпадать с названием схемы таблицы раздела.

Получилось в итоге?

Показать все комментарии