Имя: Пароль:
1C
1С v8
Ошибка с правами, не ловится отладчиком
, ,
0 DJ Anthon
 
10.12.20
07:29
Дописываю типовую УТ 11, настроил права, при открытии формы вылазит

Недостаточно прав доступа к полям: Ссылка
по причине:
Нарушение прав доступа!

База файловая, фоновые процессы отслеживаются, но отладчик не реагирует на остановку по ошибке, как ловить такую проблему?
В ЖР то же самое.
1 Волшебник
 
10.12.20
07:35
ошибка в RLS
2 DJ Anthon
 
10.12.20
07:40
(1) я от вас часто вижу этот ответ ) Только вот какой объект выдает именно такую ошибку, понять невозможно. Конкретно у меня причина оказалась в том, что на форме 9 динамических списков, 5 из них постоянно скрыты. И вот один из них успевал перед скрытием выдать ошибку, так как на его объекты не было прав. Нашёл, исправил. Только вот как искать такую ошибку в принципе, непонятно.
3 Волшебник
 
10.12.20
07:42
(2)
Отменять последние действия.
Убирать все роли, добавлять по одной.
Запустить отчет "Просмотр прав по объекту метаданных.
Запустить отчёт о сравнении прав ролей.
4 Волшебник
 
10.12.20
07:44
Самое главное - воспроизвести ошибку. Нужно поймать закономерность, чтобы в ситуации 1 ошибка стабильно была, а в ситуации 2 ошибки стабильно не было. Затем ищешь различия между ситуациями.
5 Волшебник
 
10.12.20
07:47
Ситуация 1 — это у пользователей на рабочей базе иногда возникает ошибка.
Ситуация 2 - у админа на тестовой базе всё работает.

Далее начинаем сближать эти ситуации, пока не станет очевидной причина ошибки, одна роль, какой-то право этой роли к одному объекту, какое-то условие внутри RLS, или запись регистра сведений по этому пользователю.
6 JeHer
 
10.12.20
07:49
(0) В "О программе - Информация для технической поддержки" нету никакой инфы?
7 DJ Anthon
 
10.12.20
09:02
(4) да легко вопроизводится. Под админом работает, под ограниченными правами - нет. Только ролей 40 и групп доступа 20, да объектов около сотни. 10000 строк кода и ни на одной не брякается. А дело в динамическом списке, только вот 1Ска, сyка, не говорит, что именно там и уж тем более, в каком.
8 Timon1405
 
10.12.20
09:16
(7) да ладно, разве EXCP в техножурнале не показывает их?
9 mikecool
 
10.12.20
09:33
(0) смотри права доступа по полям, емнип - у каждого поля можно настроить свои права доступа
10 Дык ё
 
10.12.20
10:14
(0) а это не ошибка, вот и не останавливается. в ЖР под админскими правами можно увидеть, каких прав не хватило
11 youalex
 
10.12.20
10:17
(0) какие ДС есть на форме - есть ли права к стандартным реквизитам объектов, которые выводятся в этих ДС
12 TormozIT
 
гуру
10.12.20
19:23
Смотри в журнале регистрации событие "Доступ.Отказ в доступе".
В ИР это можно посмотреть в инструменте "Анализ журнала регистрации":
https://www.hostedredmine.com/issues/875052/
https://www.hostedredmine.com/issues/875050
оттуда можно сразу открыть отчет "Анализ прав доступа" по указанному в событии объекту метаданных и пользователю
13 DJ Anthon
 
14.12.20
10:23
(8) (10) (12)
В ЖР: Недостаточно прав доступа к полям: Ссылка
по причине:
Нарушение прав доступа!

не написано, какой объект. если бы было написано, я бы ессно, посмотрел, у меня даже есть свой отчет, который с правами все, что хочешь покажет и сделает, только надо знать, что за объект это выдаёт.

(9) какие поля, у чего? у меня там дохрена объектов
(11) на форме 9 списков, в каком искать? )

Я так понял, что если ошибка возникает в динамическом списке, его источник может быть запросом, в котором может быть всё, что угодно.
но если список принадлежит конкретному объекту, то и в ЖР надо хотя бы его писать. Просто в 1С им это было лень программировать, как и много чего другого.
14 DJ Anthon
 
14.12.20
10:25
(10) Это ошибка, только не в коде, как оказалось. Но она очень на нее похожа. Этим и раздражает. Не знаешь, что искать и что является источником ошибки.
15 TormozIT
 
гуру
15.12.20
08:04
(13) Теперь ясно. Видимо тут есть ошибка платформы в том, что не указана таблица, для которой указано поле "Ссылка". Возможно в данном случае твой динамический список имеет основную таблицу. Тогда возможно подразумевается, что это поле основной таблицы списка.
16 TormozIT
 
гуру
15.12.20
08:08
Сделай пример для воспроизведения ошибки платформы и отправь его на [email protected] или передай мне и я сам отправлю. Обычно в случае проблем механизма RLS в таком случае используют демо базу тиражной конфигурации.