Перенос страницы в печатной форме по параметрам

1. vovka14141 28.08.21 20:54 Сейчас в теме
Приветсвую всех! Такой вопросик.
В таб.часть документа Реализация добавлена колонка "Место" (Тип строка)
Нужно сделать ВПФ "Упаковочный лист" суть в чем. Номенклатура будет упаковываться по местам и нужно что бы листы выходили на печать по этим самым местам. Ну типо 3 позиции упакованы в месте 1 (печатается лист с шапкой, таблицей в которой только номенклатура под местом 1 и подвалом), 2 позиции в месте 2 (печатается лист с шапкой, таблицей в которой только номенклатура под местом 2 и подвалом) и 1 позиция с место "", (печатается лист с шапкой, таблицей в которой только номенклатура под местом "Не определено" и подвалом).
Подскажите пожалуйста как сделать этот самый перенос страницы по местам?

//СтрокаТЧ
	ОбластьСтрокаТЧ = МакетОбработки.ПолучитьОбласть("СтрокаТЧ");
	Запрос = Новый Запрос("ВЫБРАТЬ 
	|	РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
	|	РеализацияТоваровУслугТовары.КоличествоУпаковок КАК КоличествоУпаковок,
	|	РеализацияТоваровУслугТовары.Место КАК Место,
	|	РеализацияТоваровУслугТовары.НомерСтроки КАК НомерСтроки,
	|	РеализацияТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения КАК Упаковка
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
	|ГДЕ
	|	РеализацияТоваровУслугТовары.Ссылка = &Ссылка"
	);
	
	Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект.Ссылка);
	Выборка = Запрос.Выполнить().Выгрузить();
	Для каждого ВыборкаДетальныеЗаписи Из Выборка Цикл
			ОбластьСтрокаТч.Параметры.НомерСт = ВыборкаДетальныеЗаписи.НомерСтроки;
			ОбластьСтрокаТч.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
			ОбластьСтрокаТч.Параметры.Ед = ВыборкаДетальныеЗаписи.Упаковка;
			ОбластьСтрокаТч.Параметры.КолВо = ВыборкаДетальныеЗаписи.КоличествоУпаковок;
			Если ВыборкаДетальныеЗаписи.Место = "" Тогда
				ОбластьСтрокаТч.Параметры.Место = "Не определено";
			Иначе
				ОбластьСтрокаТч.Параметры.Место = ВыборкаДетальныеЗаписи.Место;
			КонецЕсли;
ТабДок.Вывести(ОбластьСтрокаТЧ);
		
	КонецЦикла;
Показать


Заранее благодарю за любые советы!!!
По теме из базы знаний
Найденные решения
2. user925427 126 29.08.21 13:08 Сейчас в теме
Сгруппируйте в запросе по месту. Первую выборку - ВыборкаПоМестам - сделайте с типом ОбходРезультатаЗапроса.ПоГруппировкам - получите свои места. Цикл Пока ВыборкаПоМестам.Следующий(). Выводите шапку и далее, ВыборкаПоНоменклатуре = ВыборкаПоМестам.Выбрать(); Цикл по выборке, в котором выводите строки ТабДок.Вывести(ОбластьСтрокаТЧ), после окночания цикла ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user925427 126 29.08.21 13:08 Сейчас в теме
Сгруппируйте в запросе по месту. Первую выборку - ВыборкаПоМестам - сделайте с типом ОбходРезультатаЗапроса.ПоГруппировкам - получите свои места. Цикл Пока ВыборкаПоМестам.Следующий(). Выводите шапку и далее, ВыборкаПоНоменклатуре = ВыборкаПоМестам.Выбрать(); Цикл по выборке, в котором выводите строки ТабДок.Вывести(ОбластьСтрокаТЧ), после окночания цикла ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
3. vovka14141 29.08.21 17:41 Сейчас в теме
(2) Приветствую! Спасибо за совет пробую так что то не получается (Печатает столько листов сколько строк с номенклатурой), скорее всего потому что не понял как этот работает.
Приведи пример пожалуйста или поправь меня пожалуйста.

Запрос = Новый Запрос("ВЫБРАТЬ
	|	РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
	|	РеализацияТоваровУслугТовары.КоличествоУпаковок КАК КоличествоУпаковок,
	|	РеализацияТоваровУслугТовары.Место КАК Место,
	|	РеализацияТоваровУслугТовары.НомерСтроки КАК НомерСтроки,
	|	РеализацияТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения КАК Упаковка
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
	|ГДЕ
	|	РеализацияТоваровУслугТовары.Ссылка = &Ссылка
	|
	|СГРУППИРОВАТЬ ПО
	|	РеализацияТоваровУслугТовары.Место,
	|	РеализацияТоваровУслугТовары.Номенклатура,
	|	РеализацияТоваровУслугТовары.КоличествоУпаковок,
	|	РеализацияТоваровУслугТовары.НомерСтроки,
	|	РеализацияТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения"
	);
	
	Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект.Ссылка);
	Выборка = Запрос.Выполнить().Выгрузить();
	ВыборкаПоМестам = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
	Пока ВыборкаПоМестам.Следующий()  Цикл
		ТабДок.Вывести(ОбластьЛого);
		ТабДок.Вывести(ОбластьНаименование);
		ТабДок.Вывести(ОбластьРеквизиты);
		
		ВыборкаПоНоменклатуре = ВыборкаПоМестам.Выбрать();
Для каждого ВыборкаДетальныеЗаписи Из Выборка Цикл
			ОбластьСтрокаТч.Параметры.НомерСт = ВыборкаДетальныеЗаписи.НомерСтроки;
			ОбластьСтрокаТч.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
			ОбластьСтрокаТч.Параметры.Ед = ВыборкаДетальныеЗаписи.Упаковка;
			ОбластьСтрокаТч.Параметры.КолВо = ВыборкаДетальныеЗаписи.КоличествоУпаковок;
			Если ВыборкаДетальныеЗаписи.Место = "" Тогда
				ОбластьСтрокаТч.Параметры.Место = "Не определено";
			Иначе
				ОбластьСтрокаТч.Параметры.Место = ВыборкаДетальныеЗаписи.Место;
			КонецЕсли;
ТабДок.Вывести(ОбластьСтрокаТЧ);
			
		КонецЦикла;
		ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
	КонецЦикла;

Показать
4. vovka14141 29.08.21 18:14 Сейчас в теме
(2) Дружище спасибо большое за помощь!!!
По ходу дела получилось
Вот так
Запрос = Новый Запрос("ВЫБРАТЬ
	|	РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
	|	РеализацияТоваровУслугТовары.КоличествоУпаковок КАК КоличествоУпаковок,
	|	РеализацияТоваровУслугТовары.Место КАК Место,
	|	РеализацияТоваровУслугТовары.НомерСтроки КАК НомерСтроки,
	|	РеализацияТоваровУслугТовары.Номенклатура.ЕдиницаИзмерения КАК Упаковка
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
	|ГДЕ
	|	РеализацияТоваровУслугТовары.Ссылка = &Ссылка
	|ИТОГИ ПО
	|	Место"
	);
	
	Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект.Ссылка);
	Выборка = Запрос.Выполнить().Выгрузить();
	ВыборкаПоМестам = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Место");
	Пока ВыборкаПоМестам.Следующий()  Цикл
		ТабДок.Вывести(ОбластьЛого);
		ТабДок.Вывести(ОбластьНаименование);
		ТабДок.Вывести(ОбластьРеквизиты);
		
		ВыборкаПоНоменклатуре = ВыборкаПоМестам.Выбрать();
		Пока ВыборкаПоНоменклатуре.Следующий() Цикл
			ОбластьСтрокаТч.Параметры.НомерСт = ВыборкаПоНоменклатуре.НомерСтроки;
			ОбластьСтрокаТч.Параметры.Номенклатура = ВыборкаПоНоменклатуре.Номенклатура;
			ОбластьСтрокаТч.Параметры.Ед = ВыборкаПоНоменклатуре.Упаковка;
			ОбластьСтрокаТч.Параметры.КолВо = ВыборкаПоНоменклатуре.КоличествоУпаковок;
			Если ВыборкаПоНоменклатуре.Место = "" Тогда
				ОбластьСтрокаТч.Параметры.Место = "Не определено";
			Иначе
				ОбластьСтрокаТч.Параметры.Место = ВыборкаПоНоменклатуре.Место;
			КонецЕсли;
ТабДок.Вывести(ОбластьСтрокаТЧ);
			
		КонецЦикла;
		ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
	КонецЦикла;
Показать
Оставьте свое сообщение

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