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