Задать вопрос
  • Как настроить списание товара по сроку годности в регистре ТоварыНаСкладах?

    VikaUlshina
    @VikaUlshina Автор вопроса
    Поправила так:
    |УПОРЯДОЧИТЬ ПО
            |	ТоварыНаСкладахОстатки.ГоденДо
    	|ИТОГИ
    	|	МАКСИМУМ(Количество),
    	|	МАКСИМУМ(Стоимость),
    	|	СУММА(КоличествоОстаток),
    	|	СУММА(СуммаОстаток)
    	|ПО
    	|	ТоварыНаСкладахОстатки.ГоденДо,
    	|	Номенклатура,
    	|	Партия";


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


    в итоге получаю неправильное только количество, а партии и их данные - соответствуют:
    6836206d5ecb6545609967.png

    а если делаю так:
    |УПОРЯДОЧИТЬ ПО
            |	ТоварыНаСкладахОстатки.ГоденДо
    	|ИТОГИ
    	|	МАКСИМУМ(Количество),
    	|	МАКСИМУМ(Стоимость),
    	|	СУММА(КоличествоОстаток),
    	|	СУММА(СуммаОстаток)
    	|ПО
    	//|	ТоварыНаСкладахОстатки.ГоденДо,
    	|	Номенклатура,
    	|	Партия";


    и не меняя обработки результата, получаю:
    1-ую запись списания из двух - полностью правильное, а в оставшихся - правильно только кол-во, а партии с атрибутами не соответствуют
    683621b9d2ef0081057477.png

    Подскажите, пожалуйста, как это решить?
    Написано
  • Как настроить списание товара по сроку годности в регистре ТоварыНаСкладах?

    VikaUlshina
    @VikaUlshina Автор вопроса
    спасибо за разъяснения, но в данной задаче и в данном контексте этого не требуется
    Написано
  • Как настроить списание товара по сроку годности в регистре ТоварыНаСкладах?

    VikaUlshina
    @VikaUlshina Автор вопроса
    понятно, спасибо
    сделаю еще одну временную таблицу
    Написано
  • Как настроить макет в СКД?

    VikaUlshina
    @VikaUlshina Автор вопроса
    если делаю таким образом:
    680f5a15664de482022188.png
    680f5a25ccacc077900948.png
    получаю такой отчет:
    680f5a2c290e2589889814.png

    а если вот так:
    680f5bb490f7c834887018.png
    680f5bc8bc4b0082900764.png

    то такой:
    680f5bdaa0be8277247161.png

    если делаю без макета так:
    680f5c7e50d9b835866694.png

    то выходит вот так:
    680f5c5c9196e222090152.png
    Написано
  • Обнаружено нулевое количество при пересчете в единицу хранения в строке 1 списка "Товары". Как исправить?

    VikaUlshina
    @VikaUlshina Автор вопроса
    kalapanga, правильно но не совсем
    в итоге нужно было так
    НоваяСтрока.Количество 		   = ВыборкаДетальныеЗаписи.Количество;
    НоваяСтрока.КоличествоУпаковок   = ВыборкаДетальныеЗаписи.КоличествоУпаковок;


    Спасибо
    Написано
  • Обнаружено нулевое количество при пересчете в единицу хранения в строке 1 списка "Товары". Как исправить?

    VikaUlshina
    @VikaUlshina Автор вопроса
    kalapanga, записываю в ПередачаТоваровМеждуОрганизациями, а код запроса еще не окончательный - будет с условием

    переписала
    НоваяСтрока.КоличествоУпаковок = Число(ВыборкаДетальныеЗаписи.Количество);

    на
    НоваяСтрока.КоличествоУпаковок = ВыборкаДетальныеЗаписи.КоличествоУпаковок;

    и в запросе тоже вместо Количество поменяла на КоличествоУпаковок

    результата нет
    Написано