Имя: Пароль:
1C
 
Как получить актуальные остатки по регистру накопления в обработке провед док
0 gabd_marat
 
13.05.17
17:08
Народ, подскажите как при проведении документа через ОбработкуПроведения (процедура проведения в общем модуле самописная) получить актуальные остатки по регистру накопления с учетом движений проводимого документа?
1 Amra
 
13.05.17
17:11
Смотри типовые решения типа УТ 11.3, там именно так и сделано
2 gabd_marat
 
13.05.17
17:15
Хорошо посмотрю, для ясности :
А то у меня получается: в Модуле док ОбработкаПроведения выполняется процедура проведения документа из общего модуля, после идет проверка остатков в регистре накопления , но остатки получаются без учета движений самого документа.
3 Amra
 
13.05.17
17:18
(2) Ну и? Для интереса, зачем надо с учетом проводимого документа?
4 h-sp
 
13.05.17
17:20
(2) а вы через Движения делаете или через НаборЗаписей?

может не делаете Движения.Записать()   ?
5 gabd_marat
 
13.05.17
17:24
Нужно организовать в БП 3.0 партийный учет товара. То есть , например изменили и провели документ списания, позже которого есть проведенные документы. Мне для учета товара необходимо перепровести документы, которые позже измененного док, для актуального партийного учета товара.
6 gabd_marat
 
13.05.17
17:25
(4)Движения.Записать()  не прописывал, формирование движений скопировал из конструктора движений
7 h-sp
 
13.05.17
17:28
(6) из какого конструктора? Вы чудак? Конструктор движений разработан в 90х годах прошлого века.
8 gabd_marat
 
13.05.17
17:34
Процедура МТ_ДвиженияПартииТоваровНаСкладаРасход(Движения, Объект, КоличествоСписания, Пратия, Номенклатура, Склад) Экспорт    
        Движения.МТ_ПартииТоваровНаСкладах.Записывать = Истина;
        Движение = Движения.МТ_ПартииТоваровНаСкладах.Добавить();
        Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
        Движение.Период = Объект.Дата;
        Движение.Номенклатура = Номенклатура;
        Движение.Организация = Объект.Организация;
        Движение.Склад = Склад;
        Движение.Партия = Пратия;
        Движение.Количество = КоличествоСписания;
КонецПроцедуры

Формирует списание товара, прописана в общем модуле, вызывается в цикле. то есть что бы записывалось все корректно мне надо Движения.Записать() прописать после выполнения процедуры, но не в самой что бы движение не перезаписывали друг друга?
9 gabd_marat
 
13.05.17
17:35
(7) Процедура МТ_ДвиженияПартииТоваровНаСкладаРасход(Движения, Объект, КоличествоСписания, Пратия, Номенклатура, Склад) Экспорт    
        Движения.МТ_ПартииТоваровНаСкладах.Записывать = Истина;
        Движение = Движения.МТ_ПартииТоваровНаСкладах.Добавить();
        Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
        Движение.Период = Объект.Дата;
        Движение.Номенклатура = Номенклатура;
        Движение.Организация = Объект.Организация;
        Движение.Склад = Склад;
        Движение.Партия = Пратия;
        Движение.Количество = КоличествоСписания;
КонецПроцедуры

Формирует списание товара, прописана в общем модуле, вызывается в цикле. то есть что бы записывалось все корректно мне надо Движения.Записать() прописать после выполнения процедуры, но не в самой что бы движение не перезаписывали друг друга?
10 Cyberhawk
 
13.05.17
18:19
Не делай так