Вывод сирии товаров в расходной накладной

1. CoolBick 18.04.22 14:33 Сейчас в теме
Подскажите как можно в печатной форме расходной накладной вывести серию товара?
Политика стоит "Учет себестоимости по сериям"

Конфигурация Управление торговлей, редакция 11 (11.4.14.164)
Найденные решения
5. blazh 19.04.22 06:08 Сейчас в теме
(4)
| """" КАК Серия


А зачем?

Если так зечем-то задумано в типойо конфигурации и в настройках учета стоит признак "Выводить дополнительную колонку", то просто написать внешнюю печатную форму с выводом вместо пустоты серии из табличной части документа
6. CoolBick 19.04.22 11:04 Сейчас в теме
(5) Не знаю зачем 1с такое в запросе написало.
Сейчас поменял запрос и все нормально выводится
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Airlord 18.04.22 15:04 Сейчас в теме
Добрый день! Т.к. в макете "Представление номенклатуры", то могу предположить, что нужно "пилить" расширение конфигурации на заполнение этого поля в макете. Штатно вроде нет признака "Печатать серию в ПФ".
3. Evgen13 18.04.22 16:29 Сейчас в теме
печатную форму в расширение и дописываем, где выводится параметр номенклатура
+ СтрокаТовары.Номенклатура.Серия
4. CoolBick 18.04.22 20:48 Сейчас в теме
(3) в тех запросах что формирует 1с есть строки что выбирается серия, но на выходе серия = Null

Проверяю счас на конфе с демо данными 1с
Вот вся функция целиком, уже пробовал меня разные политики учета серий и индификатор серии эффекта ноль.
УстановитьПривилегированныйРежим(Истина);
	
	ТабличныйДокумент = Новый ТабличныйДокумент;
	ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_РасходнаяНакладная"­;
	
	КолонкаКодов = ФормированиеПечатныхФорм.ИмяДополнительнойКолонки();
	ВыводитьКоды = ЗначениеЗаполнено(КолонкаКодов);
	
	ИспользоватьРучныеСкидки         = ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВПродажах");
	ИспользоватьАвтоматическиеСкидки = ПолучитьФункциональнуюОпцию("ИспользоватьАвтоматическиеСкидкиВПродажах");
	ИспользоватьУпаковки             = ПолучитьФункциональнуюОпцию("ИспользоватьУпаковкиНоменклатуры");
	
	ЗапросПоСкладам = Новый Запрос;
	ЗапросПоСкладам.Текст = "
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
	|	РеализацияТоваровУслугТовары.Склад КАК Склад,
	|	РеализацияТоваровУслугТовары.Склад.ИспользоватьСерииНоменклатуры КАК ИспользоватьСерииНоменклатуры
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
	|ГДЕ
	|	РеализацияТоваровУслугТовары.Ссылка В(&МассивОбъектов)
	|	И РеализацияТоваровУслугТовары.Номенклатура.ТипНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар),ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
	|
	|ИТОГИ ПО
	|	ИспользоватьСерииНоменклатуры";
	
	ЗапросПоСкладам.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
	
	// Создание массива для проверки: какие из докуметов не попали в выборку
	МассивПроверки = Новый Массив;
	Для Каждого Ссылка Из МассивОбъектов Цикл
		МассивПроверки.Добавить(Ссылка);
	КонецЦикла;
	
	ДеревоОбъектов = ЗапросПоСкладам.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам);
		
	Для Каждого ИспользованиеСерий Из ДеревоОбъектов.Строки Цикл
		
		ЗапросПоТоварам = Новый Запрос;
		ЗапросПоТоварам.УстановитьПараметр("МассивОбъектов", ИспользованиеСерий.Строки.ВыгрузитьКолонку("Ссылка"));
		ЗапросПоТоварам.УстановитьПараметр("МассивСкладов",  ИспользованиеСерий.Строки.ВыгрузитьКолонку("Склад"));
		
		Если ИспользованиеСерий.ИспользоватьСерииНоменклатуры Тогда
			
			ТекстЗапросаПоТоварам = 
			"ВЫБРАТЬ
			|	РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
			|	РеализацияТоваровУслугТовары.Склад КАК Склад,
			|	РеализацияТоваровУслугТовары.КоличествоУпаковок КАК КоличествоУпаковок,
			|	РеализацияТоваровУслугТовары.Количество КАК Количество,
			|	РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
			|	РеализацияТоваровУслугТовары.Характеристика КАК Характеристика,
			|	РеализацияТоваровУслугТовары.Упаковка КАК Упаковка,
			|	"""" КАК Серия
			|ПОМЕСТИТЬ ТаблицаТоваров
			|ИЗ
			|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
			|ГДЕ
			|	РеализацияТоваровУслугТовары.Ссылка В(&МассивОбъектов)
			|	И РеализацияТоваровУслугТовары.Склад В(&МассивСкладов)
			|	И НЕ(РеализацияТоваровУслугТовары.Номенклатура.ТипНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар), ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
			|				И РеализацияТоваровУслугТовары.СтатусУказанияСерий В (2, 4, 6, 8))
			|
			|ОБЪЕДИНИТЬ ВСЕ
			|
			|ВЫБРАТЬ
			|	РеализацияТоваровУслугСерии.Ссылка,
			|	РеализацияТоваровУслугСерии.Склад,
			|	РеализацияТоваровУслугСерии.Количество,
			|	РеализацияТоваровУслугСерии.Количество,
			|	РеализацияТоваровУслугСерии.Номенклатура,
			|	РеализацияТоваровУслугСерии.Характеристика,
			|	ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка),
			|	РеализацияТоваровУслугСерии.Серия
			|ИЗ
			|	Документ.РеализацияТоваровУслуг.Серии КАК РеализацияТоваровУслугСерии
			|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК ТаблицаТовары
			|		ПО РеализацияТоваровУслугСерии.Ссылка = ТаблицаТовары.Ссылка
			|			И РеализацияТоваровУслугСерии.Номенклатура = ТаблицаТовары.Номенклатура
			|			И РеализацияТоваровУслугСерии.Характеристика = ТаблицаТовары.Характеристика
			|			И РеализацияТоваровУслугСерии.Склад = ТаблицаТовары.Склад
			|ГДЕ
			|	РеализацияТоваровУслугСерии.Ссылка В(&МассивОбъектов)
			|	И РеализацияТоваровУслугСерии.Склад В(&МассивСкладов)
			|	И РеализацияТоваровУслугСерии.Номенклатура.ТипНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар), ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
			|
			|СГРУППИРОВАТЬ ПО
			|	РеализацияТоваровУслугСерии.Ссылка,
			|	РеализацияТоваровУслугСерии.Склад,
			|	РеализацияТоваровУслугСерии.Номенклатура,
			|	РеализацияТоваровУслугСерии.Характеристика,
			|	РеализацияТоваровУслугСерии.Серия,
			|	РеализацияТоваровУслугСерии.Количество,
			|	РеализацияТоваровУслугСерии.Количество
			|
			|ИМЕЮЩИЕ
			|	МАКСИМУМ(ТаблицаТовары.СтатусУказанияСерий) В (2, 4, 6, 8, 10)
			|;
			|
			|////////////////////////////////////////////////////////////­////////////////////
			|ВЫБРАТЬ
			|	ТаблицаТоваров.Ссылка,
			|	ТаблицаТоваров.Склад,
			|	СУММА(ТаблицаТоваров.КоличествоУпаковок) КАК КоличествоУпаковок,
			|	СУММА(ТаблицаТоваров.Количество) КАК Количество,
			|	ТаблицаТоваров.Номенклатура,
			|	ТаблицаТоваров.Характеристика,
			|	ТаблицаТоваров.Упаковка,
			|	ВЫБОР
			|		КОГДА ТаблицаТоваров.Номенклатура.ВидНоменклатуры.НастройкаИспользованияСерий = ЗНАЧЕНИЕ(Перечисление.НастройкиИспользованияСерийНоменклатуры.ЭкземплярТовара)
			|			ТОГДА NULL
			|		ИНАЧЕ ТаблицаТоваров.Серия
			|	КОНЕЦ КАК Серия
			|ПОМЕСТИТЬ СуммированнаяТаблицаТоваров
			|ИЗ
			|	ТаблицаТоваров КАК ТаблицаТоваров
			|
			|СГРУППИРОВАТЬ ПО
			|	ТаблицаТоваров.Ссылка,
			|	ТаблицаТоваров.Склад,
			|	ТаблицаТоваров.Номенклатура,
			|	ТаблицаТоваров.Характеристика,
			|	ТаблицаТоваров.Упаковка,
			|	ВЫБОР
			|		КОГДА ТаблицаТоваров.Номенклатура.ВидНоменклатуры.НастройкаИспользованияСерий = ЗНАЧЕНИЕ(Перечисление.НастройкиИспользованияСерийНоменклатуры.ЭкземплярТовара)
			|			ТОГДА NULL
			|		ИНАЧЕ ТаблицаТоваров.Серия
			|	КОНЕЦ
			|;
			|
			|////////////////////////////////////////////////////////////­////////////////////
			|ВЫБРАТЬ
			|	ТаблицаТоваров.Ссылка КАК Ссылка,
			|	ТаблицаТоваров.Ссылка.Организация КАК Организация,
			|	ТаблицаТоваров.Ссылка.Контрагент КАК Контрагент,
			|	ТаблицаТоваров.Ссылка.Номер КАК Номер,
			|	ТаблицаТоваров.Ссылка.Дата КАК Дата,
			|	ТаблицаТоваров.Ссылка.Организация.Префикс КАК Префикс,
			|	ТаблицаТоваров.Склад КАК Склад,
			|	&ТекстЗапросаНаименованиеЕдиницыИзмерения КАК ПредставлениеЕдининицыИзмеренияУпаковки,
			|	ПРЕДСТАВЛЕНИЕ(ТаблицаТоваров.Номенклатура.ЕдиницаИзмерения) КАК ПредставлениеБазовойЕдиницыИзмерения,
			|	ТаблицаТоваров.КоличествоУпаковок КАК КоличествоУпаковок,
			|	ТаблицаТоваров.Количество КАК Количество,
			|	ТаблицаТоваров.Номенклатура.ВидНоменклатуры.НастройкаИспользованияСерий КАК НастройкаИспользованияСерий,
			|	ТаблицаТоваров.Номенклатура.Код КАК Код,
			|	ТаблицаТоваров.Номенклатура.Артикул КАК Артикул,
			|	ТаблицаТоваров.Номенклатура.НаименованиеПолное КАК ПредставлениеНоменклатуры,
			|	ТаблицаТоваров.Характеристика.НаименованиеПолное КАК ПредставлениеХарактеристики,
			|	ТаблицаТоваров.Номенклатура КАК Номенклатура,
			|	ТаблицаТоваров.Характеристика КАК Характеристика,
			|	ВЫБОР
			|		КОГДА ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1) = 1
			|			ТОГДА НЕОПРЕДЕЛЕНО
			|		ИНАЧЕ ТаблицаТоваров.Упаковка.Наименование
			|	КОНЕЦ КАК Упаковка,
			|	ТаблицаТоваров.Серия.Наименование КАК ПредставлениеСерии,
			|	ВЫБОР
			|		КОГДА ТаблицаТоваров.Ссылка.ВернутьМногооборотнуюТару
			|				И ТаблицаТоваров.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
			|			ТОГДА ИСТИНА
			|		ИНАЧЕ ЛОЖЬ
			|	КОНЕЦ КАК ЭтоВозвратнаяТара
			|ИЗ
			|	СуммированнаяТаблицаТоваров КАК ТаблицаТоваров
			|
			|ИТОГИ ПО
			|	Ссылка,
			|	Склад,
			|	Номенклатура,
			|	Характеристика
			|;
			|
			|////////////////////////////////////////////////////////////­////////////////////
			|ВЫБРАТЬ
			|	ТаблицаТоваров.Ссылка КАК Ссылка,
			|	ТаблицаТоваров.Склад КАК Склад,
			|	ТаблицаТоваров.Номенклатура КАК Номенклатура,
			|	ТаблицаТоваров.Характеристика КАК Характеристика,
			|	ТаблицаТоваров.Серия.Наименование КАК ПредставлениеСерии
			|ИЗ
			|	ТаблицаТоваров КАК ТаблицаТоваров
			|ГДЕ
			|	ТаблицаТоваров.Номенклатура.ВидНоменклатуры.НастройкаИспользованияСерий = ЗНАЧЕНИЕ(Перечисление.НастройкиИспользованияСерийНоменклатуры.ЭкземплярТовара)
			|	И НЕ ТаблицаТоваров.Серия ЕСТЬ NULL 
			|";
			
			ТекстЗапросаПоТоварам = СтрЗаменить(ТекстЗапросаПоТоварам, "&ТекстЗапросаКоэффициентУпаковки",
				Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаКоэффициентаУпаковки(
					"ТаблицаТоваров.Упаковка",
					"ТаблицаТоваров.Номенклатура"));
					
			ТекстЗапросаПоТоварам = СтрЗаменить(ТекстЗапросаПоТоварам, "&ТекстЗапросаНаименованиеЕдиницыИзмерения",
				Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаЗначениеРеквизитаЕдиницыИзмерения(
					"Наименование",
					"ТаблицаТоваров.Упаковка",
					"ТаблицаТоваров.Номенклатура"));
			
			ЗапросПоТоварам.Текст	 = ТекстЗапросаПоТоварам;
			РезультатЗапроса		 = ЗапросПоТоварам.ВыполнитьПакет();
			ДанныеПечати			 = РезультатЗапроса[2].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
			ВыборкаПоСериям 		 = РезультатЗапроса[3].Выбрать();
			
		Иначе
			
			ТекстЗапросаПоТоварам = 
			"ВЫБРАТЬ
			|	РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
			|	РеализацияТоваровУслугТовары.Ссылка.Организация КАК Организация,
			|	РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент,
			|	РеализацияТоваровУслугТовары.Ссылка.Номер КАК Номер,
			|	РеализацияТоваровУслугТовары.Ссылка.Дата КАК Дата,
			|	РеализацияТоваровУслугТовары.Ссылка.Организация.Префикс КАК Префикс,
			|	РеализацияТоваровУслугТовары.Склад КАК Склад,
			|	&ТекстЗапросаНаименованиеЕдиницыИзмерения КАК ПредставлениеЕдининицыИзмеренияУпаковки,
			|	ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения) КАК ПредставлениеБазовойЕдиницыИзмерения,
			|	РеализацияТоваровУслугТовары.КоличествоУпаковок КАК КоличествоУпаковок,
			|	РеализацияТоваровУслугТовары.Количество КАК Количество,
			|	РеализацияТоваровУслугТовары.Номенклатура.Код КАК Код,
			|	РеализацияТоваровУслугТовары.Номенклатура.Артикул КАК Артикул,
			|	РеализацияТоваровУслугТовары.Номенклатура.НаименованиеПолное КАК ПредставлениеНоменклатуры,
			|	РеализацияТоваровУслугТовары.Характеристика.НаименованиеПолное КАК ПредставлениеХарактеристики,
			|	"""" КАК ПредставлениеСерии,
			|	ВЫБОР
			|		КОГДА ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1) = 1
			|			ТОГДА НЕОПРЕДЕЛЕНО
			|		ИНАЧЕ РеализацияТоваровУслугТовары.Упаковка.Наименование
			|	КОНЕЦ КАК Упаковка,
			|	ВЫБОР
			|		КОГДА РеализацияТоваровУслугТовары.Ссылка.ВернутьМногооборотнуюТару
			|				И РеализацияТоваровУслугТовары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара)
			|			ТОГДА ИСТИНА
			|		ИНАЧЕ ЛОЖЬ
			|	КОНЕЦ КАК ЭтоВозвратнаяТара,
			|	NULL КАК НастройкаИспользованияСерий,
			|	РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
			|	РеализацияТоваровУслугТовары.Характеристика КАК Характеристика
			|ИЗ
			|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
			|ГДЕ
			|	РеализацияТоваровУслугТовары.Ссылка В(&МассивОбъектов)
			|	И РеализацияТоваровУслугТовары.Склад В(&МассивСкладов)
			|	И РеализацияТоваровУслугТовары.Номенклатура.ТипНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар), ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
			|
			|ИТОГИ ПО
			|	Ссылка,
			|	Склад,
			|	Номенклатура,
			|	Характеристика";
			
			ТекстЗапросаПоТоварам = СтрЗаменить(ТекстЗапросаПоТоварам, "&ТекстЗапросаКоэффициентУпаковки",
				Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаКоэффициентаУпаковки(
					"РеализацияТоваровУслугТовары.Упаковка",
					"РеализацияТоваровУслугТовары.Номенклатура"));
					
			ТекстЗапросаПоТоварам = СтрЗаменить(ТекстЗапросаПоТоварам, "&ТекстЗапросаНаименованиеЕдиницыИзмерения",
				Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаЗначениеРеквизитаЕдиницыИзмерения(
					"Наименование",
					"РеализацияТоваровУслугТовары.Упаковка",
					"РеализацияТоваровУслугТовары.Номенклатура"));
			
			ЗапросПоТоварам.Текст = ТекстЗапросаПоТоварам;
			ДанныеПечати = ЗапросПоТоварам.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
			
		КонецЕсли;
		
		ПервыйДокумент = Истина;
		
		Макет = УправлениеПечатью.МакетПечатнойФормы("Документ.РеализацияТоваровУслуг.ПФ_MXL_РасходнаяНакладная");
		
		ШиринаОтсутствующихОбластей = 0;
		Если НЕ ВыводитьКоды Тогда
			ШиринаОтсутствующихОбластей = Макет.Область("КолонкаКодов").ШиринаКолонки;
		КонецЕсли;
		
		Если Не ИспользоватьУпаковки Тогда
			
			ШиринаОтсутствующихОбластей = ШиринаОтсутствующихОбластей + Макет.Область("КолонкаКоличестваУпаковок").ШиринаКолонки;
			ШиринаОтсутствующихОбластей = ШиринаОтсутствующихОбластей + Макет.Область("КолонкаПредставленияУпаковок").ШиринаКолонки;
			
		КонецЕсли;
		
		// Раздвинуть колонку "КолонкаТоваров" на ширину отсутствующих областей
		Макет.Область("КолонкаТоваров").ШиринаКолонки = Макет.Область("КолонкаТоваров").ШиринаКолонки + ШиринаОтсутствующихОбластей;
		
		РеквизитыДокумента = Новый Структура("Номер, Дата, Префикс, Представление");

		Пока ДанныеПечати.Следующий() Цикл
			
			ИндексМассиваПроверки = МассивПроверки.Найти(ДанныеПечати.Ссылка);
			Если ИндексМассиваПроверки <> Неопределено Тогда
				МассивПроверки.Удалить(ИндексМассиваПроверки);
			КонецЕсли;
			
			НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
			
			ЗаполнитьЗначенияСвойств(РеквизитыДокумента, ДанныеПечати);
			
			ВыборкаПоСкладам = ДанныеПечати.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
			Пока ВыборкаПоСкладам.Следующий() Цикл
				
				Если Не ПервыйДокумент Тогда
					ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
				КонецЕсли;
				
				ПервыйДокумент = Ложь;
				
				Область = Макет.ПолучитьОбласть("Заголовок");
				СтруктураДанныхЗаголовок = Новый Структура;
				СтруктураДанныхЗаголовок.Вставить("ТекстЗаголовка", НСтр("ru='Расходная накладная'"));
				ШтрихкодированиеПечатныхФорм.ВывестиШтрихкодВТабличныйДокумент(ТабличныйДокумент, Макет, Область, ДанныеПечати.Ссылка);
				Область.Параметры.Заполнить(СтруктураДанныхЗаголовок);
				ТабличныйДокумент.Вывести(Область);
				
				Область = Макет.ПолучитьОбласть("Шапка");
				СтруктураДанныхШапка = Новый Структура;
				СтруктураДанныхШапка.Вставить("ПредставлениеРаспоряжения", ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента, НСтр("ru='Реализация товаров'")));
				СтруктураДанныхШапка.Вставить("ПредставлениеСклада", ВыборкаПоСкладам.Склад);
				СтруктураДанныхШапка.Вставить("Склад", ВыборкаПоСкладам.Склад);
				Область.Параметры.Заполнить(СтруктураДанныхШапка);
				ТабличныйДокумент.Вывести(Область);
				
				Область = Макет.ПолучитьОбласть("Поставщик");
				СтруктураДанныхПоставщик = Новый Структура;
				СтруктураДанныхПоставщик.Вставить("ПредставлениеОрганизации", 
					ФормированиеПечатныхФорм.ОписаниеОрганизации(ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ВыборкаПоСкладам.Организация, ВыборкаПоСкладам.Дата), 
						"ПолноеНаименование"));
				СтруктураДанныхПоставщик.Вставить("Организация", ВыборкаПоСкладам.Организация);
				Область.Параметры.Заполнить(СтруктураДанныхПоставщик);
				ТабличныйДокумент.Вывести(Область);
				
				Область = Макет.ПолучитьОбласть("Покупатель");
				СтруктураДанныхПокупатель = Новый Структура;
				СтруктураДанныхПоставщик.Вставить("ПредставлениеПартнера", 
					ФормированиеПечатныхФорм.ОписаниеОрганизации(ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ВыборкаПоСкладам.Контрагент, ВыборкаПоСкладам.Дата),
						"ПолноеНаименование"));
				СтруктураДанныхПоставщик.Вставить("Контрагент", ВыборкаПоСкладам.Контрагент);
				Область.Параметры.Заполнить(СтруктураДанныхПоставщик);
				ТабличныйДокумент.Вывести(Область);
				
				Область = Макет.ПолучитьОбласть("ШапкаТаблицы|НачалоСтроки");
				ТабличныйДокумент.Вывести(Область);
				Если ВыводитьКоды Тогда
					Область = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
					СтруктураДанныхКоды = Новый Структура("ИмяКолонкиКодов", КолонкаКодов);
					Область.Параметры.Заполнить(СтруктураДанныхКоды);
					ТабличныйДокумент.Присоединить(Область);
				КонецЕсли;
				Область = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаТоваров");
				ТабличныйДокумент.Присоединить(Область);
				Если ИспользоватьУпаковки Тогда
					Область = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкиУпаковок");
					ТабличныйДокумент.Присоединить(Область);
				КонецЕсли;
				Область = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкиКоличества");
				ТабличныйДокумент.Присоединить(Область);
				
				ОбластьНачалоСтроки		 = Макет.ПолучитьОбласть("СтрокаТаблицы|НачалоСтроки");
				ОбластьКолонкаКодов		 = Макет.ПолучитьОбласть("СтрокаТаблицы|КолонкаКодов");
				ОбластьКолонкаТоваров	 = Макет.ПолучитьОбласть("СтрокаТаблицы|КолонкаТоваров");
				ОбластьКолонкаУпаковок	 = Макет.ПолучитьОбласть("СтрокаТаблицы|КолонкиУпаковок");
				ОбластьКолонкаКоличества = Макет.ПолучитьОбласть("СтрокаТаблицы|КолонкиКоличества");

				СчетСтрок = 1;				

				ВыборкаПоСсылкамТЧ = ВыборкаПоСкладам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

				Пока ВыборкаПоСсылкамТЧ.Следующий() Цикл

					ВыборкаПоНоменклатуреТЧ = ВыборкаПоСсылкамТЧ.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

					Пока ВыборкаПоНоменклатуреТЧ.Следующий() Цикл

						ВыборкаПоСтрокамТЧ = ВыборкаПоНоменклатуреТЧ.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
						
						ПерваяСтрока = Истина;
						СтрокаУпаковок = "";
						СтрокаКоличесткаУпаковок = "";
						СтрокаЕдиницИзмерений = "";
						СтрокаКоличества = "";
						
						Пока ВыборкаПоСтрокамТЧ.Следующий() Цикл
							
							Если ВыборкаПоСтрокамТЧ.НастройкаИспользованияСерий = Перечисления.НастройкиИспользованияСерийНоменклатуры.ЭкземплярТовара Тогда
								
								Если ПерваяСтрока Тогда
									
									СтруктураДанныхНомерСтроки = Новый Структура("НомерСтроки", СчетСтрок);
									ОбластьНачалоСтроки.Параметры.Заполнить(СтруктураДанныхНомерСтроки);
									СчетСтрок = СчетСтрок + 1;
									ТабличныйДокумент.Вывести(ОбластьНачалоСтроки);
									Если ВыводитьКоды Тогда
										СтруктураДанныхКоды = Новый Структура("ЗначениеКода", ВыборкаПоСтрокамТЧ[КолонкаКодов]);
										ОбластьКолонкаКодов.Параметры.Заполнить(СтруктураДанныхКоды);
										ТабличныйДокумент.Присоединить(ОбластьКолонкаКодов);
									КонецЕсли;
									
									СтруктураПоиска = Новый Структура;
									СтруктураПоиска.Вставить("Ссылка", ВыборкаПоСтрокамТЧ.Ссылка);
									СтруктураПоиска.Вставить("Склад", ВыборкаПоСтрокамТЧ.Склад);
									СтруктураПоиска.Вставить("Номенклатура", ВыборкаПоСтрокамТЧ.Номенклатура);
									СтруктураПоиска.Вставить("Характеристика", ВыборкаПоСтрокамТЧ.Характеристика);
									
									СтрокаСерий = "";
									Пока ВыборкаПоСериям.НайтиСледующий(СтруктураПоиска) Цикл
										СтрокаСерий = СтрокаСерий + ВыборкаПоСериям.ПредставлениеСерии + ", ";
									КонецЦикла;
									
									Если СтрДлина(СтрокаСерий) <> 0 Тогда
										СтрокаСерий = Лев(СтрокаСерий, СтрДлина(СтрокаСерий) - 2);
									КонецЕсли;
									
									ДополнительныеПараметрыПолученияНаименованияДляПечати = НоменклатураКлиентСервер.ДополнительныеПараметрыПредставлениеНоменклатурыДляПечати();
									ДополнительныеПараметрыПолученияНаименованияДляПечати.ВозвратнаяТара = ВыборкаПоСтрокамТЧ.ЭтоВозвратнаяТара;
									
									Товар = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
										ВыборкаПоСтрокамТЧ.ПредставлениеНоменклатуры,
										ВыборкаПоСтрокамТЧ.ПредставлениеХарактеристики,
										,
										СтрокаСерий,
										ДополнительныеПараметрыПолученияНаименованияДляПечати);
									
									СтруктураДанныхТовар = Новый Структура("Товар", Товар);
									ОбластьКолонкаТоваров.Параметры.Заполнить(СтруктураДанныхТовар);
									
									ТабличныйДокумент.Присоединить(ОбластьКолонкаТоваров);
									
									ПерваяСтрока = Ложь;
									
								КонецЕсли;
								
								Если ИспользоватьУпаковки Тогда
									СтрокаУпаковок = СтрокаУпаковок + ВыборкаПоСтрокамТЧ.ПредставлениеЕдининицыИзмеренияУпаковки + Символы.ПС;
									СтрокаКоличесткаУпаковок = СтрокаКоличесткаУпаковок + ВыборкаПоСтрокамТЧ.КоличествоУпаковок + Символы.ПС;
								КонецЕсли;
								
								СтрокаЕдиницИзмерений = СтрокаЕдиницИзмерений + ВыборкаПоСтрокамТЧ.ПредставлениеБазовойЕдиницыИзмерения + Символы.ПС;
								СтрокаКоличества = СтрокаКоличества + ВыборкаПоСтрокамТЧ.Количество + Символы.ПС;
								
								ТоварССериейЭкземпляром = Истина;
																
							Иначе			
								
								СтруктураДанныхНомерСтроки = Новый Структура("НомерСтроки", СчетСтрок);
								ОбластьНачалоСтроки.Параметры.Заполнить(СтруктураДанныхНомерСтроки);
								СчетСтрок = СчетСтрок + 1;
								ТабличныйДокумент.Вывести(ОбластьНачалоСтроки);
								
								Если ВыводитьКоды Тогда
									СтруктураДанныхКоды = Новый Структура("ЗначениеКода", ВыборкаПоСтрокамТЧ[КолонкаКодов]);
									ОбластьКолонкаКодов.Параметры.Заполнить(СтруктураДанныхКоды);
									ТабличныйДокумент.Присоединить(ОбластьКолонкаКодов);
								КонецЕсли;
								
								ДополнительныеПараметрыПолученияНаименованияДляПечати = НоменклатураКлиентСервер.ДополнительныеПараметрыПредставлениеНоменклатурыДляПечати();
								ДополнительныеПараметрыПолученияНаименованияДляПечати.ВозвратнаяТара = ВыборкаПоСтрокамТЧ.ЭтоВозвратнаяТара;
								
								Товар = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
									ВыборкаПоСтрокамТЧ.ПредставлениеНоменклатуры,
									ВыборкаПоСтрокамТЧ.ПредставлениеХарактеристики,
									,
									ВыборкаПоСтрокамТЧ.ПредставлениеСерии,
									ДополнительныеПараметрыПолученияНаименованияДляПечати);
									
								СтруктураДанныхТовар = Новый Структура("Товар", Товар);
								ОбластьКолонкаТоваров.Параметры.Заполнить(СтруктураДанныхТовар);
								
								ТабличныйДокумент.Присоединить(ОбластьКолонкаТоваров);
								
								Если ИспользоватьУпаковки Тогда 									
									ОбластьКолонкаУпаковок.Параметры.Заполнить(ВыборкаПоСтрокамТЧ);
									ТабличныйДокумент.Присоединить(ОбластьКолонкаУпаковок);
								КонецЕсли;
								
								ОбластьКолонкаКоличества.Параметры.Заполнить(ВыборкаПоСтрокамТЧ);
								ТабличныйДокумент.Присоединить(ОбластьКолонкаКоличества);
								
								ТоварССериейЭкземпляром = Ложь;
											
							КонецЕсли;
							
						КонецЦикла;
						
						Если ТоварССериейЭкземпляром Тогда
							Если ИспользоватьУпаковки Тогда
								СтруктураДанныхКолонкаУпаковок = Новый Структура;
								СтруктураДанныхКолонкаУпаковок.Вставить("КоличествоУпаковок", СтрокаКоличесткаУпаковок);
								СтруктураДанныхКолонкаУпаковок.Вставить("ПредставлениеЕдининицыИзмеренияУпаковки", СтрокаУпаковок);
								ОбластьКолонкаУпаковок.Параметры.Заполнить(СтруктураДанныхКолонкаУпаковок);
								ТабличныйДокумент.Присоединить(ОбластьКолонкаУпаковок);
							КонецЕсли;
							
							СтруктураДанныхКолонкаКоличества = Новый Структура;
							СтруктураДанныхКолонкаКоличества.Вставить("Количество", СтрокаКоличества);
							СтруктураДанныхКолонкаКоличества.Вставить("ПредставлениеБазовойЕдиницыИзмерения", СтрокаЕдиницИзмерений);
							ОбластьКолонкаКоличества.Параметры.Заполнить(СтруктураДанныхКолонкаКоличества);
							ТабличныйДокумент.Присоединить(ОбластьКолонкаКоличества);
							
						КонецЕсли;
						
					КонецЦикла;
					
				КонецЦикла;
				
				Область = Макет.ПолучитьОбласть("ПодвалТаблицы|НачалоСтроки");
				ТабличныйДокумент.Вывести(Область);
				Если ВыводитьКоды Тогда
					Область = Макет.ПолучитьОбласть("ПодвалТаблицы|КолонкаКодов");
					ТабличныйДокумент.Присоединить(Область);
				КонецЕсли;
				Область = Макет.ПолучитьОбласть("ПодвалТаблицы|КолонкаТоваров");
				ТабличныйДокумент.Присоединить(Область);
				Если ИспользоватьУпаковки Тогда
					Область = Макет.ПолучитьОбласть("ПодвалТаблицы|КолонкиУпаковок");
					ТабличныйДокумент.Присоединить(Область);
				КонецЕсли;
				Область = Макет.ПолучитьОбласть("ПодвалТаблицы|КолонкиКоличества");
				ТабличныйДокумент.Присоединить(Область);
				
				Область = Макет.ПолучитьОбласть("Подписи");
				ТекстИтоговойСтроки = НСтр("ru = 'Всего наименований %ВсегоНаименований%'");
				ТекстИтоговойСтроки = СтрЗаменить(ТекстИтоговойСтроки,"%ВсегоНаименований%", СчетСтрок-1);
				СтруктураДанныхИтоговаяСтрока = Новый Структура;
				СтруктураДанныхЗаголовок.Вставить("ИтоговаяСтрока", ТекстИтоговойСтроки);
				Область.Параметры.Заполнить(СтруктураДанныхЗаголовок);
				ТабличныйДокумент.Вывести(Область);
				
			КонецЦикла;
			
			УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ДанныеПечати.Ссылка);
			
		КонецЦикла;
		
	КонецЦикла;
	
	Для Каждого Ссылка Из МассивПроверки Цикл
		Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			НСтр("ru = 'В документе %1 отсутствуют товары. Печать расходной накладной не требуется.'"),
			Ссылка);
			
		ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
			Текст,
			Ссылка);
	КонецЦикла;
	
	ТабличныйДокумент.АвтоМасштаб = Истина;
	
	Если ПривилегированныйРежим() Тогда
		УстановитьПривилегированныйРежим(Ложь);
	КонецЕсли;
	
	Возврат ТабличныйДокумент;

Показать
5. blazh 19.04.22 06:08 Сейчас в теме
(4)
| """" КАК Серия


А зачем?

Если так зечем-то задумано в типойо конфигурации и в настройках учета стоит признак "Выводить дополнительную колонку", то просто написать внешнюю печатную форму с выводом вместо пустоты серии из табличной части документа
6. CoolBick 19.04.22 11:04 Сейчас в теме
(5) Не знаю зачем 1с такое в запросе написало.
Сейчас поменял запрос и все нормально выводится
Оставьте свое сообщение

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