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

1. Дмитрий74Чел 239 11.06.20 16:09 Сейчас в теме
Необходимо создать профиль доступа, включив в него роли. При этом в типовом решении (ЕРПУХ) с этим все очень плохо. Есть например роль "ЧтениеБюджетированиКазначейство", которая дает доступ к куче объектов, зачастую без RLS. Поэтому будем пилить свои роли. Но это полбеды.
Надо как-то получить список всех объектов, доступ к которым осуществляется при открытии документа, при проведении.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. soft_wind 11.06.20 16:24 Сейчас в теме
(1) А зачем вам список всех объектов?
На каждый объект настраиваете свое правило доступа, а он уже будет виден/Невиден, доступен/Недоступен конкретному пользователю.
На управляемых формах в свойствах элемента есть видимость/доступновть по ролям
3. Дмитрий74Чел 239 11.06.20 16:49 Сейчас в теме +0.3 $m
(2) Потому для создания профиля надо в него добавлять роли. Сейчас это выглядит так: добавили "тонкий клиент" + "чтение документа А". Пытаемся запустить сеанс, получаем ошибки доступа, добавляем несколько ролей. Дальше повтор итерации пока не запустится сеанс. Далее повтор итерации пока не откроется сначала список документов, а потом и сам документ.
Хочется получить весь список сразу.
alex-l19041; +1 Ответить
4. VictorRGB2 14 11.06.20 17:19 Сейчас в теме
(3) типовыми способами никак, не вернет вам конфа, не умеет
только писать свой обработчик
1. перебрать все реквизиты объекта - все что относится к метаданным будет только часть списка
2. по каждому объекту выполнить ПриСозданииНаСервере(), ПриЧтенииНаСервере() - и вот оттуда уже вылавливать все обращения к объектам конфигурации в части метаданных и дополнять список из п.1
3. не факт, что после п.2 получится полный список, т.к. есть обращения во всякие общие модули при изменении значений реквизитов и вот как их все отловить, задача достаточно сложная

это ERP, такой инструмент писать тот еще геморрой, а отрабатывать он будет весьма долго
думаю, что стоимость его создания перевесит затраты на итерации по заполнению основных профилей
а потом вы уже будете все знать и так на 90%
5. alex-l19041 8 12.06.20 08:58 Сейчас в теме
6. herfis 515 12.06.20 09:10 Сейчас в теме +0.2 $m
В голову приходит только ТЖ парсить
Дмитрий74Чел; +1 Ответить
7. Xershi 1262 12.06.20 09:18 Сейчас в теме
От итераций никуда не деться.
Потому что это работа разработчика.
Как автоматизировать?
Написать тесты, которые сделают все за вас.
Вам останется допиливать роли согласно итерации.
8. vugluscr1991 12 12.06.20 12:56 Сейчас в теме
Думаю, что самый простой путь - пойти от существующих профилей: положим для некоторого документа есть типовая роль, которая разрешает доступ на чтение его. Берем эту роль и находим все профили, в которых она включена. Получаем набор профилей (их должно быть немного), выбираем некоторый профиль и делаем на его основе нужный нам профиль, убирая из этого профиля те роли, которые нам не нужны. При этом постоянно тестируем получаемый профиль на функциональность.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот