Права на детали

Добрый день!
Подскажите пожалуйста, как сделать доступ на детали таким же как и на родительские записи?
Права раздаются на каждую род. запись процессом.
В тройке для этого были группы, а в нет.
BPM 7.6

Нравится

5 комментариев

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

"Александр Зубков" написал:

Здравствуйте.

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

Создал отдельную тему, но здесь тоже спрошу - как скопировать права из родительской записи скопировать в объект детали?

Здравствуйте!

После включения администрирования по записям, в системе появится объект SysDetailObjectNameRights.
Права на записи раздела хранятся в таблице SysSectionObjectNameRights.

Задача: при изменении записи в разделе перенести права на записи детали.

Решение:
1) Определите Id записей деталей:

select Id from SysDetailObjectName where SectionObjectNameId = 'Id измененной записи'

2) Удалите права на эти записи:

delete from SysDetailObjectNameRights
where RecordId in
(select Id from SysDetailObjectName where SectionObjectNameId = 'Id измененной записи')

3) Теперь Вам необходимо скопировать записи из таблицы SysSectionObjectNameRights в таблицу SysDetailObjectNameRights, изменив RecordId на Id записи детали.

"Демьяник Алексей" написал:После включения администрирования по записям, в системе появится объект SysDetailObjectNameRights.
Права на записи раздела хранятся в таблице SysSectionObjectNameRights.

А кроме того в системе есть таблицы SysAccountRight и SysAccountAddressRight. Их не трогать?

SysAccountRight - таблица, которая хранит права на записи в объекте Account (Контрагент).
SysAccountAddressRight - таблица, которая хранит права на записи в объекте AccountAddress (Адреса контрагента).

При раздаче прав необходимо переносить права с SysAccountRight в SysAccountAddressRight.

ЗЫ. Прошу прощения - в предыдущем посте указал некорректное название таблиц.

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