Функция НапечататьОтпуск(МассивОбъектов)
ОфисныеДокументы = Новый Соответствие;
Шаблон = "[Сотрудник] - Отпуск № [Номер] от [Дата]";
ЗначенияРеквизитов = ОбщегоНазначения.ЗначенияРеквизитовОбъектов(МассивОбъектов, "Сотрудник, Номер, Дата, Ссылка");
Для каждого Ссылка Из МассивОбъектов Цикл
РеквизитыДокумента = ЗначенияРеквизитов[Ссылка];
РеквизитыДокумента.Дата = Формат(РеквизитыДокумента.Дата, "ДФ=dd.MM.yyyy; ДЛФ=D");
РеквизитыДокумента.Номер = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(РеквизитыДокумента.Номер);
ИмяДокумента = СтроковыеФункцииКлиентСервер.ВставитьПараметрыВСтроку(Шаблон, РеквизитыДокумента);
АдресДокумента = СформироватьОтпуск(Ссылка);
ОфисныеДокументы.Вставить(АдресДокумента, ИмяДокумента);
КонецЦикла;
Возврат ОфисныеДокументы;
КонецФункции
Функция СформироватьОтпуск(Ссылка)
МакетДокумента = УправлениеПечатью.МакетПечатнойФормы("Документ.Отпуск.Расш_2_ПФ_DOC_Отпуск");
Макет = УправлениеПечатью.ИнициализироватьМакетОфисногоДокумента(МакетДокумента, Неопределено);
ОписаниеОбластей = Новый Структура;
//В варианте когда отметил логотип отдельной областью
УправлениеПечатью.ДобавитьОписаниеОбласти(ОписаниеОбластей, "Лого", "ВерхнийКолонтитул");
УправлениеПечатью.ДобавитьОписаниеОбласти(ОписаниеОбластей, "Шапка", "Общая");
ПечатнаяФорма = УправлениеПечатью.ИнициализироватьПечатнуюФорму(Неопределено, Неопределено, Макет);
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| Отпуск.Сотрудник КАК Сотрудник,
| Отпуск.ДатаНачалаОсновногоОтпуска КАК ДатаНач,
| Отпуск.ДатаОкончанияОсновногоОтпуска КАК ДатаКон,
| Отпуск.КоличествоДнейОсновногоОтпуска КАК Дни,
| Отпуск.Дата КАК ДатаДокумента,
| Отпуск.Номер КАК НомерДокумента,
| ГОД(Отпуск.ДатаНачалаОсновногоОтпуска) КАК ГодНач,
| ГОД(Отпуск.ДатаОкончанияОсновногоОтпуска) КАК ГодКон
|ИЗ
| Документ.Отпуск КАК Отпуск
|ГДЕ
| Отпуск.Ссылка В(&Ссылка)";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить().Выгрузить();
Данные = ОбщегоНазначения.ТаблицаЗначенийВМассив(РезультатЗапроса);
Для каждого Элемент Из Данные Цикл
Элемент["НомерДокумента"] = ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(Элемент["НомерДокумента"]);
Элемент["ДатаДокумента"] = Формат(Элемент["ДатаДокумента"], "ДФ=dd.MM.yyyy; ДЛФ=D");
Область = УправлениеПечатью.ОбластьМакета(Макет, ОписаниеОбластей["Лого"]);
УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, Элемент);
Область = УправлениеПечатью.ОбластьМакета(Макет, ОписаниеОбластей["Шапка"]);
УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, Область, Элемент);
АдресХранилищаПечатнойФормы = УправлениеПечатью.СформироватьДокумент(ПечатнаяФорма);
УправлениеПечатью.ОчиститьСсылки(ПечатнаяФорма);
УправлениеПечатью.ОчиститьСсылки(Макет);
КонецЦикла;
Возврат АдресХранилищаПечатнойФормы;
КонецФункции