Имя: Пароль:
1C
1С v8
После обновления БП "У пользователя недостаточно прав..." при записи документа
0 duke55
 
16.10.13
05:02
Граждане, подскажите где я заплутал:

обновил 1С8 БП до версии 2.0.51.6. После обновления бухгалтер не может реализации проводить, получает в ответ ошибку об отсутствии соответствующих прав.

Выложил историю "в картинках" сюда:
http://savepic.su/3531296.gif

Не пойму где и на что ей прав не хватает...
1 duke55
 
16.10.13
13:23
Вот кусок кода, на котором застревает процесс:

// Обработчик подписки на событие ПриЗаписиДокументаРегистрацияРеквизитовИП
Процедура ПриЗаписиДокументаРегистрацияДанныхПервичныхДокументов(Источник, Отказ) Экспорт
    
    Если ЗначениеЗаполнено(Источник.Организация) Тогда
        
        Если глЗначениеПеременной("ИспользоватьУправляемыеБлокировки") Тогда
            СтруктураПараметров    = Новый Структура("ТипТаблицы, ИмяТаблицы", "РегистрСведений", "ДанныеПервичныхДокументов");
            
            ЗначенияБлокировки    = Новый Соответствие;
            ЗначенияБлокировки.Вставить("Документ",    Источник.Ссылка);
            
            ОбщегоНазначения.УстановитьУправляемуюБлокировку(СтруктураПараметров, ЗначенияБлокировки);
        КонецЕсли;
        
        МетаданныеДокумента = Источник.Метаданные();
        
        НомерДокумента = "";
        ДатаДокумента = "";
        
        Если МетаданныеДокумента.Реквизиты.Найти("НомерВходящегоДокумента") <> Неопределено Тогда
            НомерДокумента = Источник.НомерВходящегоДокумента;
        Иначе
            НомерДокумента = ОбщегоНазначения.ПолучитьНомерНаПечать(Источник);
        КонецЕсли;
        Если МетаданныеДокумента.Реквизиты.Найти("ДатаВходящегоДокумента") <> Неопределено Тогда
            ДатаДокумента = Источник.ДатаВходящегоДокумента;
        Иначе
            ДатаДокумента = Источник.Дата;
        КонецЕсли;    
        
        НаборЗаписейРегистра = РегистрыСведений.ДанныеПервичныхДокументов.СоздатьНаборЗаписей();    
        НаборЗаписейРегистра.Отбор.Документ.Установить(Источник.Ссылка);
        
        МенеджерЗаписиРегистра = НаборЗаписейРегистра.Добавить();
        МенеджерЗаписиРегистра.Организация         = Источник.Организация;
        МенеджерЗаписиРегистра.Документ             = Источник.Ссылка;
        МенеджерЗаписиРегистра.Номер             = НомерДокумента;
        МенеджерЗаписиРегистра.Дата              = ДатаДокумента;
        МенеджерЗаписиРегистра.НомерРегистратора = Источник.Номер;
        МенеджерЗаписиРегистра.ДатаРегистратора     = Источник.Дата;
        
        НаборЗаписейРегистра.Записать (Истина);        //здесь вывадивается ошибка
        
    КонецЕсли;    
    
КонецПроцедуры



Самое интересное, что интерактивно пользователь влегкую создает ту самую запись в регистре, на которую программно якобы у него нет прав...
2 Восточный Парень
 
16.10.13
14:13
На этот регистр у пользователя какое ограничение на уровне записей установлено, по какому реквизиту?
3 Восточный Парень
 
16.10.13
14:15
Все, увидел, значит нет у него прав на ту организацию.
4 duke55
 
16.10.13
14:26
права на организацию есть...

я же говорю, что руками запись в том самом регистре создается этим самым пользователем...

а одно из измерений в регистре как раз "Организация"... Если бы прав не было, то не смогла бы записи создавать по выбранной организации...
5 duke55
 
16.10.13
14:27
... да и раньше без проблем работало, пока конфигурацию не обновил
6 duke55
 
16.10.13
14:28
как работает РЛС:

#ОсновноеУсловиеЗапись("Организация")

?
7 Восточный Парень
 
16.10.13
14:28
Отладчиком проверял что передает в процедуру в организацию под этим пользователем?
8 duke55
 
16.10.13
14:32
да...

бряк ставил на строчке записи регистра и смотрел все переменные...
9 duke55
 
16.10.13
14:34
у меня тоже сначала создалось такое впечатление, что при записи передавалась не та организация...
10 duke55
 
16.10.13
14:39
(7)

вот наглядно:
http://savepic.su/3490397.gif
11 duke55
 
17.10.13
09:01
хм... просто пересоздал записи с регистре сведений "Настройки прав доступа пользователей" и проблемы УЙ...шли

мистика!