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