Номенклатура без уникального имени (Печатная форма)

1. Romakon92 07.06.17 17:10 Сейчас в теме
Подскажите пожалуйста, почему может зацикливаться Номенклатура, которая не имеет уникального имени?

Пример: В документе, ОТЧЕТ О РОЗНИЧНЫХ ПРОДАЖАХ Есть несколько разных номенклатур с одним именем "Канцтовары" рисунок 1
а в Печатной форме выводится информация о Каждом "Канцтоваре" * "Количество Канцтоваров" ?
рисунок 2

код:
Функция Печать() Экспорт
	
		ТабДокумент = Новый ТабличныйДокумент;
		ТзИнгридиенты = Новый ТаблицаЗначений();
		ТабДокумент = Новый ТабличныйДокумент;
		Макет = ПолучитьМакет("Макет");
		
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ОтчетОРозничныхПродажахТовары.Цена КАК Цена,
	|	ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
	|	ОтчетОРозничныхПродажахТовары.Номенклатура.Ссылка КАК Номенклатура,
	|	ПартииТоваровНаСкладах.СтатусПартии КАК СтатусПартии,
	|	ЕСТЬNULL(ПартииТоваровНаСкладах.Количество, 0) КАК Количество1,
	|	ОтчетОРозничныхПродажахТовары.Количество КАК Количество,
	|	ОтчетОРозничныхПродажахТовары.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
	|	ОтчетОРозничныхПродажахТовары.Сумма КАК Сумма
	|ИЗ
	|	Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
	|		ПО ОтчетОРозничныхПродажахТовары.Ссылка = ПартииТоваровНаСкладах.Регистратор
	|			И ОтчетОРозничныхПродажахТовары.Номенклатура = ПартииТоваровНаСкладах.Номенклатура
	|ГДЕ
	|	ОтчетОРозничныхПродажахТовары.Ссылка = &Ссылка
	|	И ПартииТоваровНаСкладах.Регистратор = &Ссылка
	|ИТОГИ
	|	СУММА(Количество1),
	|	СУММА((Цена - Цена * ПроцентСкидкиНаценки / 100) * Количество1) КАК Сумма
	|ПО
	|	СтатусПартии,
	|	НоменклатурнаяГруппа";
			
	 Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);  
РезультатЗапроса = Запрос.Выполнить();
//Шапка
	ВыборкаСтатус = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СтатусПартии");
	Пока ВыборкаСтатус.Следующий() Цикл
	    ОбластьДанные1 = Макет.ПолучитьОбласть("Шапка");
		ВыСтСтПа = ВыборкаСтатус.СтатусПартии;
		ОбластьДанные1.Параметры.СтатусПартии =
		?(ВыСтСтПа = "Купленный", "Продажи фирмы", 
		?(ВыСтСтПа = "На комиссию", "Комиссионные продажи" ,ВыСтСтПа));
		ТабДокумент.Вывести(ОбластьДанные1);    
//Группа
	ВыборкаГруппа = ВыборкаСтатус.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НоменклатурнаяГруппа");	
	Пока ВыборкаГруппа.Следующий() Цикл
        ОбластьДанные2 = Макет.ПолучитьОбласть("Группа");
        ОбластьДанные2.Параметры.НоменклатурнаяГруппа = ВыборкаГруппа.НоменклатурнаяГруппа;
	//Итог
		ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;
		ОбластьДанные2.Параметры.СуммаИтог = ВыборкаГруппа.Сумма;
		ТабДокумент.Вывести(ОбластьДанные2);                                                 
//Данные
    ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать();
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
	
    	ОбластьДанные3 = Макет.ПолучитьОбласть("Данные");
        ОбластьДанные3.Параметры.Номенклатура =  ВыборкаДетальныеЗаписи.Номенклатура;
        ОбластьДанные3.Параметры.Колво  =  ВыборкаДетальныеЗаписи.Количество1;
		ЦенаСоСкидкой =  ВыборкаДетальныеЗаписи.Цена * ВыборкаДетальныеЗаписи.ПроцентСкидкиНаценки/100;
		ОбластьДанные3.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;
		ОбластьДанные3.Параметры.Сумма = (ОбластьДанные3.Параметры.Цена - ЦенаСоСкидкой)*ВыборкаДетальныеЗаписи.Количество1;
        ТабДокумент.Вывести(ОбластьДанные3);
     Конеццикла;  
     КонецЦикла;
     КонецЦикла; 
	Возврат ТабДокумент;
КонецФункции
Показать


Почему так происходит?
Прикрепленные файлы:
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. NatalyaVP 07.06.17 21:03 Сейчас в теме
Потому что разные ссылки у номенклатур (разные элементы справочника).
Посмотрите коды у номенклатур, они будут отличаться, а наименование может совпадать.
+
4. Romakon92 13.06.17 11:02 Сейчас в теме
(2)
(3)
Подскажите, что нужно изменить в "Связях" для корректного отображения Номенклатуры
Прикрепленные файлы:
+
5. BackinSoda 13.06.17 13:12 Сейчас в теме
(4) не совсем понятно, что не так. В документе 12 похожих номенклатур (как Вы их сами различаете то?)) и в пф вроде так же ?
Попробуйте связь еще по НомеруСтроки.
+
6. Romakon92 13.06.17 13:41 Сейчас в теме
(5) Если беру данные о "Количестве" из "ПартииТоваровНаСкладах.Количество" то,
В документе 13 номенклатур, (1+1+1+1+1+1+1+1+1+1+1+2 = 13)
А в печатной форме (13+13+13+13+13+13+13+13+13+13+13+13=156)
Рисунок1


Если беру данные о "Количестве" из "ОтчетОРозничныхПродажахТовары.Количество" то,
в печатной форме "Канцтовары" отображаются правильно, но неправильно отображается разделение (Комиссионный/ не комиссионный)
Рисунок2
Прикрепленные файлы:
+
7. Romakon92 13.06.17 13:43 Сейчас в теме
(5)
Попробуйте связь еще по НомеруСтроки.

Не помогло, вся номенклатура посчиталась в пф 1 строчкой
+
3. iskdv 08.06.17 08:57 Сейчас в теме
"Регистратор" делает несколько движений по регистру "РегистрНакопления.ПартииТоваровНаСкладах" при списании партий ( у нас несколько партий по одной и той же номенклатуре), соответственно при использовании левого соединения появятся "дубляжи"
+
8. NatalyaVP 14.06.17 20:52 Сейчас в теме
Попробуйте в запросе итоги убрать.
+
10. Romakon92 26.06.17 11:37 Сейчас в теме
9. Romakon92 26.06.17 11:34 Сейчас в теме
Вопрос актуален, никак не могу решить задачу,
Получается либо неправильное Количество у "Не уникальной" Номенклатуры при выборке Количества из
ПартииТоваровНаСкладах.Количество КАК Количество1,

либо неправильное отображение у Товарах проданного Комиссионно, в случае с
ОтчетОРозничныхПродажахТовары.Количество КАК Количество,
+
11. Romakon92 26.06.17 15:12 Сейчас в теме
"Канцтовары" это одна и та же номенклатура, просто забитая с разным количеством и ценой
Или если "Копировать" любую другую номенклатуру, то данные выводятся некорректно
+
12. Romakon92 26.06.17 15:45 Сейчас в теме
Данные из Отчета о розничных продажах (Рисунок 1)

и
Данные из РЕГИСТРА Партии Товаров на Складах (Рисунок 2)
Прикрепленные файлы:
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот