|
Не переписываются движения. | ☑ | ||
|---|---|---|---|---|
|
0
Maikroft
01.06.20
✎
16:37
|
Написал процедуру в УПП 1.3 в подписке обработки проведения типового заказа.
Но она, собака, не хочет переписывать движения, хотя по отладке всё правильно. По сути должно быть: в том случае, если ТипОтгрузки = КОжиданию, то запись из регистра накопления удалялась. Может, кто сталкивался с таким: Процедура Интеграция_ОбработкаПроведенияЗаказПокупателя(Источник, Отказ, РежимПроведения) Экспорт Регистратор = Источник.Ссылка; ЕстьТоварыКОжиданию = Ложь; Для Каждого Строка из Источник.Товары Цикл Если Строка.ТипОтгрузки = Перечисления.ТипОтгрузки.ОжиданиеТовара Тогда ЕстьТоварыКОжиданию = Истина; КонецЕсли; КонецЦикла; Если ЕстьТоварыКОжиданию Тогда //Перепишем регистр накопления ТоварыВРезервеНаСкладах НаборЗаписей = РегистрыНакопления.ТоварыВРезервеНаСкладах.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(Регистратор); НаборЗаписей.Прочитать(); УдаляемыеЗаписи = Новый Массив; Для Каждого Запись Из НаборЗаписей Цикл ПараметрыПоиска = Новый Структура(); ПараметрыПоиска.Вставить("Номенклатура", Запись.Номенклатура); ПараметрыПоиска.Вставить("ТипОтгрузки", Перечисления.ТипОтгрузки.ОжиданиеТовара); НайденныеСтроки = Источник.Товары.НайтиСтроки(ПараметрыПоиска); Если НайденныеСтроки.Количество() = 0 Тогда Продолжить; Иначе УдаляемыеЗаписи.Добавить(Запись); КонецЕсли; КонецЦикла; Для Каждого УдаляемаяЗапись Из УдаляемыеЗаписи Цикл НаборЗаписей.Удалить(УдаляемаяЗапись); КонецЦикла; НаборЗаписей.Записать(); КонецЕсли; КонецПроцедуры |
|||
|
1
dka80
01.06.20
✎
17:18
|
НаборЗаписей = РегистрыНакопления.ТоварыВРезервеНаСкладах.СоздатьНаборЗаписей()
это не тот набор, который пишется в обработке проведения |
|||
|
2
maptbln
01.06.20
✎
17:31
|
(1) отбор по регистратору ведь есть
|
|||
|
3
dka80
01.06.20
✎
21:52
|
(2) ну смотри: ты проводишь документ. Началась тразнакция. Сформировался контекст данных Источник.Движения и набор движений. Но обработка проведения еще не завершена и набор не записан. Далее выполняется твоя процедура с записью новых данных. Далее завершается транзакция и записываются данные из Источник.Движения, которые и перезаписывают данные из твоей процедуры
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |