В обработчике печати не был сформирован табличный документ для: Макет

1. user1202776 03.02.23 15:02 Сейчас в теме
При нажатии на печатную форму,для каждой строки табличной части должна формироваться печатная форма, но выдает ошибку. Что делаю не так?
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	               |	РаботаВВыходныеИПраздничныеДниСотрудники.Ссылка.Дата КАК ДатаДокумента,
	               |	РаботаВВыходныеИПраздничныеДниСотрудники.Ссылка КАК Ссылка,
	               |	РаботаВВыходныеИПраздничныеДниСотрудники.Сотрудник КАК Сотрудник,
	               |	РаботаВВыходныеИПраздничныеДниСотрудники.Дата КАК Дата,
	               |	РаботаВВыходныеИПраздничныеДниСотрудники.ОтработаноЧасов КАК ОтработаноЧасов
	               |ИЗ
	               |	Документ.РаботаВВыходныеИПраздничныеДни.Сотрудники КАК РаботаВВыходныеИПраздничныеДниСотрудники
	               |ГДЕ
	               |	РаботаВВыходныеИПраздничныеДниСотрудники.Ссылка = &Ссылка
	               |	И РаботаВВыходныеИПраздничныеДниСотрудники.ОтработаноЧасов <> 0";
	
	Запрос.УстановитьПараметр("Ссылка",МассивОбъектов[0]);
	
	ТаблицаЗнач=Новый ТаблицаЗначений;
	ТаблицаЗнач=Запрос.Выполнить().Выгрузить();

	Для Каждого Строка Из ТаблицаЗнач Цикл
	УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Макет", "Заявление на выход в праздничный день (Авенир)", СформироватьПечатнуюФорму(ОбъектыПечати,Строка.Сотрудник,Строка.ДатаДокумента));	
	КонецЦикла;

	КонецПроцедуры


Функция СформироватьПечатнуюФорму(ОбъектыПечати,Сотрудник,ДатаДокумента)
	                                                               
		Разделитель = ",";
		//Для Каждого Строка Из ТаблицаЗнач Цикл
			
			
	ТабДок = Новый ТабличныйДокумент;				
	Табдок.ИмяПараметровПечати = "ПараметрыПечати";
	ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
	ТабДок.АвтоМасштаб = Истина;
	

	Макет = ПолучитьМакет("Макет");
	ОбластьМакета=Макет.ПолучитьОбласть("Область1");
	


	
	
	МассивДолжности=ПолучитьСклоненияСтроки("Должность", ,"ПД=Родительный");
	ДолжностьРодительскийПадеж = СтрСоединить(МассивДолжности, Разделитель);
	
	МассивСотрудники = ПолучитьСклоненияСтроки(Сотрудник, ,"ПД=Родительный");
	ФИОРодительскийПадеж = СтрСоединить(МассивСотрудники, Разделитель);

		ОбластьМакета.Параметры.ФИОРодительскийПадеж=НРег(Лев(ФИОРодительскийПадеж, 1)) + Сред(ФИОРодительскийПадеж, 2);
		ОбластьМакета.Параметры.ДолжностьРодительскийПадеж=НРег(Лев(ДолжностьРодительскийПадеж, 1)) + Сред(ДолжностьРодительскийПадеж, 2);
		ОбластьМакета.Параметры.ДатаДокумента=Формат(ДатаДокумента,"ДФ=dd.MM.yyyy");
		ОбластьМакета.Параметры.ФИО=Сотрудник;
		
	ТабДок.Вывести(ОбластьМакета);
		
	
	Возврат ТабДок;
КонецФункции
Показать
Прикрепленные файлы:
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
4. glek 119 03.02.23 15:51 Сейчас в теме
(1) я вот не слышал, чтобы в коллекцию печатных можно было бы выводить печатки с одинаковым идентификатором.
Сформируйте единый табличный документ и выведите.
5. user1202776 06.02.23 09:15 Сейчас в теме
(4)сможете привести пример?
2. vadim1011985 99 03.02.23 15:28 Сейчас в теме
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Макет", "Заявление на выход в праздничный день (Авенир)", СформироватьПечатнуюФорму(ОбъектыПечати,Строка.Сотрудник,Строка.ДатаДокумента));


ИдентификаторКоманды в функции СведенияОВнешнейОбработке "Макет" ?
3. user1202776 03.02.23 15:45 Сейчас в теме
(2)да
Функция СведенияОВнешнейОбработке() Экспорт
	//сообщим платформе, что перед ней печатная форма
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.1.3.1");
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	//сообщаем, что печатная форма предназначается для определенного документа
	МасНазначений = Новый Массив;
	МасНазначений.Добавить("Документ.РаботаВВыходныеИПраздничныеДни");
	ПараметрыРегистрации.Назначение = МасНазначений;
	//определяем наименование, версию и режим безопасности
	ПараметрыРегистрации.Наименование = "Заявление на выход в праздничный день";
	ПараметрыРегистрации.Версия = "1.00";
	ПараметрыРегистрации.БезопасныйРежим = Ложь;
	// добавляем команду
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = НСтр("ru = 'Заявление на выход в праздничный день  '");
	НоваяКоманда.Идентификатор = "Макет";
	НоваяКоманда.Использование =ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	НоваяКоманда.ПоказыватьОповещение = Истина;
	НоваяКоманда.Модификатор = "ПечатьMXL";
	Возврат ПараметрыРегистрации;
КонецФункции
Показать
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)