Как получить все объекты, на которые роль имеет доступ 1С?

Рейтинг: 1Ответов: 1Опубликовано: 27.01.2023

Как можно получить все объекты, на которые роль имеет доступ с самим доступом (чтение, изменение, ...)?

Сейчас пока есть вариант в цикле перебрать все объекты из Метаданные, проверяя каждое право доступа (Если ПравоДоступа("Просмотр", Документ, Роль) Тогда). Но может есть какой-нибудь вариант попроще? Например, есть ли что-то подобное - НужнаяРоль.ОбъектыНаКоторыеЕстьПраваДоступа?

Ответы

▲ 2Принят

Убедитесь что в вашей конфигурации присутствует РегистрСведений.ПраваРолей попробуйте так:

ВЫБРАТЬ
    ПраваРолей.ОбъектМетаданных КАК ОбъектМетаданных,
    ПраваРолей.Роль КАК Роль,
    ПраваРолей.Изменение КАК Изменение,
    ПраваРолей.Добавление КАК Добавление,
    ПраваРолей.ЧтениеБезОграничения КАК ЧтениеБезОграничения,
    ПраваРолей.ИзменениеБезОграничения КАК ИзменениеБезОграничения,
    ПраваРолей.ДобавлениеБезОграничения КАК ДобавлениеБезОграничения,
    ПраваРолей.Просмотр КАК Просмотр,
    ПраваРолей.Редактирование КАК Редактирование,
    ПраваРолей.ИнтерактивноеДобавление КАК ИнтерактивноеДобавление
ИЗ
    РегистрСведений.ПраваРолей КАК ПраваРолей
ГДЕ
    ПраваРолей.Роль = &Роль