Имя: Пароль:
1C
1С v8
Пересорт номенклатуры в УТ 10.3
,
0 Смертник
 
26.08.15
15:45
Создал документ Пересорт товаров в УТ 10.3 по аналогии с Розницей. Только с учетом проведения по регистру накопления "ПартииТоваровНаСкладах". Списание по партии получилось сделать, а вот как сделать оприходование не пойму.
Если ПроводитьПоПартиям Тогда
                
    ТаблицаСписания = Движения.СписанныеТовары.Выгрузить();        
                УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров(Ссылка,ТаблицаСписания,,,,,Истина);
                
КонецЕсли;
1 Смертник
 
26.08.15
15:45
Если дописываю приход - через выполнить Приход - затирается Расход. Как сделать правильно?
2 Михаил Козлов
 
26.08.15
16:00
То, что было написано в регистр партий процедурой УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров(...)
можно получить, прочитав набор движений:
таблицаУЗПУ = Движения.ПартииТоваровНаСкладах.Прочитать();
Потом можете курочить эту таблицу как хотите. После изменений - ВыполнитьДвижения модуля набора записей (т.к. у Вас и расход и приход).
То, что расход затирается - естественно, т.к. коллекция движений записывается в БД при проведении (затирая сформированные в общем модуле), а Вы оформили только приход.
3 Смертник
 
26.08.15
16:13
таблицаУЗПУ = Движения.ПартииТоваровНаСкладах.Прочитать();
пишет обращение к процедуре как к функции
4 Михаил Козлов
 
26.08.15
16:21
Виноват:
таблицаУЗПУ = Движения.ПартииТоваровНаСкладах.Прочитать().Выгрузить() - будет таблица значений или  Движения.ПартииТоваровНаСкладах.Прочитать() - в коллекции будет записи, которые сформированы процедурой ДвижениеПартийТоваров.
5 Смертник
 
26.08.15
16:39
ТЗ = Движения.ПартииТоваровНаСкладах.Выгрузить();
                Для Каждого Строка ИЗ Товары Цикл
                    // регистр ТоварыВРознице Приход
                       Движение = ТЗ.Добавить();
                    Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
                    Движение.Период = Дата;
                    Движение.Склад = Склад;
                    Движение.Номенклатура = Строка.НоменклатураОприходования;
                    Движение.СерияНоменклатуры = Строка.СерияНоменклатурыОприходования;
                    Движение.Количество = Строка.Количество;
                    Движение.Качество = Строка.Качество;
                    Движение.Стоимость = Строка.Количество * Строка.ЦенаОприходования;
                КонецЦикла;
                Движения.мПериод            = Дата;
                Движения.мТаблицаДвижений   = ТЗ;

                Если Не Отказ Тогда
                    Движения.ПартииТоваровНаСкладах.ВыполнитьДвижения();
                КонецЕсли;
6 Смертник
 
26.08.15
16:40
Вот так? Только вот вот здесь - Движения.мПериод            = Дата; - не находит мПериод
7 John83
 
26.08.15
16:47
а почему комплектацию не использовать?
8 Смертник
 
26.08.15
16:51
Все вроде как получилось - спасибо что помогли разобраться
9 Михаил Козлов
 
26.08.15
17:25
(8) Мне кажется, в (7) дельный совет.