Имя: Пароль:
1C
 
Право доступа на изменение документа, ошибка при изменении
,
0 Momus
 
07.05.20
15:53
Сижу два часа уже не могу понять в чем ошибка. Есть самописный документ, есть роль для него. Права: чтение, изменение, проведение, просмотр, редактирование. На чтение и изменение ограничение доступа к данным вида "док где док.статус в (значения перечисления)". Расширил право на чтение и изменение документа с новым статусом("док где док.статус в (значения перечисления + мой новый статус)"). Документы вижу, а при попытке изменения - ошибка доступа к бд. Не могу понять где затык. Право на изменение есть. В модуле объекта и в подписке пусто. Или я туплю, или предыдущий разработчик куда-то запрятал. Подскажите, где я куплю или где еще можно проверить?
1 Fedor-1971
 
07.05.20
16:01
(0) Возможно статус пишется в РС, и там нет твоего нового типа

Остановка по ошибке в конфигураторе?
Замер производительности - как минимум, хотя-бы будет понятно куда дёргались и что писали
2 Momus
 
07.05.20
16:07
(1) модуль считай что пуст. Есть запись в тч документа, но права на него есть. Остановка по ошибке ничего не дает: останавливается на строке ДокОбъект.Записать(), по ф11 не заходит отсюда. Замером не делал, надо попробовать.
3 Momus
 
07.05.20
16:09
(1) похоже на то, что сделано не где-то в модуле, а где-то в свойствах или галочкой какой. Пробовал глобальным поиском найти, но тщетно.
4 Fedor-1971
 
07.05.20
16:11
(3) дословно сообщение какое?
5 Momus
 
07.05.20
16:16
(4) у пользователя недостаточно прав на исполнение операции над базой данных
6 Fedor-1971
 
07.05.20
16:17
(5) смотри в журнал регистрации, может там что есть
7 Fedor-1971
 
07.05.20
16:18
6+ и проверь включена ли отладка на сервере, что-то странное
8 Momus
 
07.05.20
16:20
(6) Отладка включена, переподключался и чистил кэш. В журнале только строка с моим ДокОбъект.Записать() и "у пользователя недостаточно прав на исполнение операции над базой данных"
9 Fedor-1971
 
07.05.20
16:21
Права на объект как выданы:
  1. Реквизиты - чтение
  2. Одна ТЧ - запись
  3. Остальные ТЧ - чтение

Так?
10 Momus
 
07.05.20
16:26
(9) да. Вся соль в том, что проблема для двух статусов (сделанных до меня) все ок, а для нового - ошибка. Точнее этот мой статус не новый, он был уже до меня, просто прав на него не было (на документы с этим статусом)
11 Momus
 
07.05.20
16:27
(10) для других статусов ок, для моего ошибка
12 Momus
 
07.05.20
16:31
(9) поторопился с ответом. нужны права на чтение для всех реквизитов? Даже те, которые я не трогаю?
13 Momus
 
07.05.20
16:33
(12) на тч и реквизит, который меняю, права на чтение и запись. Но есть много реквизитов без права на чтение (их пользователь не видит)
14 Fedor-1971
 
07.05.20
16:34
(12) лучше выдать права на чтение, поищи поиском статус без ошибки,
где-то устанавливается привилегированный режим
15 Fedor-1971
 
07.05.20
16:35
(13) записываются все данные документа, а на них нет прав - отсюда ошибка
16 Momus
 
07.05.20
16:53
(15) В настройках прав стоит галочка типа "при записи устанавливать привилегированный режим" как-то так, не помню точно. Но я нашел ошибку, она была не в этом. При записи я доступный статус меня на недоступный и из-за этого ошибка. Очевидно, но я проглядел. В самом начале своего поиска этот момент я исключил, изменив статус "руками" при записи документа через точку останова. Или как-то неаккуратно изменил или кэш (строку комментируешь, перезапускаешь отладчик, а она все равно исполняется). Вот последнее более вероятно, не знаю почему, но у меня такое постоянно (особенно тяжко отлаживать отчеты).
17 Fedor-1971
 
07.05.20
16:59
(16) вот и ладненько
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший