![]() |
|
Не проводятся документы после обновления БП | ☑ | ||
---|---|---|---|---|
0
Анютик
17.10.18
✎
23:45
|
Коллеги, я в тупике. Обновила нетиповую. При проведении типового документа ПКО вываливает ошибку "Ошибка получения представления значения: В данной транзакции уже происходили ошибки!".
В отладчике нашла - обработка подписки на событие, вызывается из модуля менеджера регистра сведений Процедура ЗарегистрироватьУстранениеПроблемы(Источник, ТипПроблемы) Экспорт Если Источник.ОбменДанными.Загрузка Тогда Возврат; КонецЕсли; Если Источник.ЭтоНовый() Тогда Возврат; КонецЕсли; Если ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда СсылкаНаИсточник = Источник.Ссылка; НовоеЗначениеПометкиУдаления = Источник.ПометкаУдаления; ОбменДаннымиВызовСервера.ЗарегистрироватьУстранениеПроблемы(СсылкаНаИсточник, ТипПроблемы, НовоеЗначениеПометкиУдаления); КонецЕсли; КонецПроцедуры Объект определяет, при обращении на ссылку и любые ссылочные реквизиты - ошибка та же. Куда смотреть? права прошерстила, вроде все ок. ТИИ делала:) Впервые вижу такого зверя |
|||
1
Franchiser
гуру
18.10.18
✎
00:07
|
Транзакция внутри транзакции, возможно при проведении одного документа проводятся связанные документы. У меня так было с каким-то документом и привязанным к нему СЧФ
|
|||
2
Анютик
18.10.18
✎
00:23
|
(1) нет, там тупо пишется регистр сведений. Я понять не могу, почему объект читается, а ссылка нет? разве такое может быть?
|
|||
3
Анютик
18.10.18
✎
00:32
|
Процедура ЗарегистрироватьУстранениеПроблемы(Источник, ТипПроблемы, Знач НовоеЗначениеПометкиУдаления) Экспорт
УстановитьПривилегированныйРежим(Истина); Если ОбменДаннымиПовтИсп.ИспользуемыеПланыОбмена().Количество() > 0 И (БезопасныйРежим() = ЛОЖЬ ИЛИ Пользователи.ЭтоПолноправныйПользователь()) Тогда НаборЗаписейКонфликта = РегистрыСведений.РезультатыОбменаДанными.СоздатьНаборЗаписей(); НаборЗаписейКонфликта.Отбор.ПроблемныйОбъект.Установить(Источник); НаборЗаписейКонфликта.Отбор.ТипПроблемы.Установить(ТипПроблемы); НаборЗаписейКонфликта.Прочитать(); Если НаборЗаписейКонфликта.Количество() = 1 Тогда Если НовоеЗначениеПометкиУдаления <> ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Источник, "ПометкаУдаления") Тогда НаборЗаписейКонфликта[0].ПометкаУдаления = НовоеЗначениеПометкиУдаления; НаборЗаписейКонфликта.Записать(); Иначе НаборЗаписейКонфликта.Очистить(); НаборЗаписейКонфликта.Записать(); КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
4
Анютик
18.10.18
✎
01:36
|
(1) о да...то, чего не может быть. Правы, вложенные транзакции. Тоже в подписке....еле нашла. Спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |