Здравствуйте. Создана внешняя печатная форма т2, которая печатается из карточки сотрудника. Но там не реализовано заполнение отпусков, взяла из типового отчета запрос и установила параметры. Но все равно не выводятся отпуска. С чем может быть связано?

СписокОтпусков = Новый Массив;
 СписокОтпусков.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускЕжегодный);
 СписокОтпусков.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускБезСохраненияЗарплаты);
 СписокОтпусков.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускУчебный);
 СписокОтпусков.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускУчебныйНеоплачиваемый);
 СписокОтпусков.Добавить(Перечисления.СостоянияРаботникаОрганизации.ОтпускПоУходуЗаРебенком);
 Запрос.УстановитьПараметр("СписокОтпусков", СписокОтпусков);

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

 Отпуска = Запрос.Выполнить().Выбрать();

 ПоместилисьВсеОтпуска = Истина;
 ВывестиТолькоДопОтпуск = Ложь;
 инд = 0;
 Отпуска.Сбросить();

 Пока Отпуска.Следующий() Цикл

  Если инд >= 14 Тогда
   ПоместилисьВсеОтпуска = ложь;
   Прервать
  КонецЕсли;

  Если НЕ ЗначениеЗаполнено(Отпуска.ДатаНачалаДоп) или Отпуска.ДатаС < Отпуска.ДатаНачалаДоп Тогда

   инд = инд + 1;

   // Вид отпуска
   ЧетвертаяСтраницаТ2.Параметры["ВидОтпуска"+инд] = Отпуска.ПричинаОтсутствия;

   // Период отпуска
   ЧетвертаяСтраницаТ2.Параметры["ДатаС"+инд] = Отпуска.ДатаС;
   ЧетвертаяСтраницаТ2.Параметры["ДатаПо"+инд] = Отпуска.ДатаПо;
   ЧетвертаяСтраницаТ2.Параметры["ДнейОтпуска"+инд] = Отпуска.Продолжительность;
   ЧетвертаяСтраницаТ2.Параметры["РабочийГодС"+инд] = Отпуска.РабочийГодС;
   ЧетвертаяСтраницаТ2.Параметры["РабочийГодПо"+инд] = Отпуска.РабочийГодПо;
   ЧетвертаяСтраницаТ2.Параметры["ОснованиеОтпуска"+инд] = "Пр.№ "+ СокрЛП(Отпуска.НомерПриказа) +" от " + Формат(Отпуска.ДатаПриказа, "ДФ=dd.MM.yyyy") + " " + Отпуска.Основание;

  КонецЕсли;

  Если ЗначениеЗаполнено(Отпуска.ДополнительныйОтпуск) и ЗначениеЗаполнено(Отпуска.ДатаНачалаДоп) и ЗначениеЗаполнено(Отпуска.ДатаОкончанияДоп) и Отпуска.ДатаНачалаДоп <= Отпуска.ДатаОкончанияДоп Тогда

   инд = инд + 1;
   Если инд >= 14 Тогда
    ПоместилисьВсеОтпуска = ложь;
    ВывестиТолькоДопОтпуск = Истина;
    Прервать
   КонецЕсли;

   // Вид отпуска
   ЧетвертаяСтраницаТ2.Параметры["ВидОтпуска"+инд] = Отпуска.ДополнительныйОтпуск;

   // Период отпуска
   ЧетвертаяСтраницаТ2.Параметры["ДатаС"+инд] = Отпуска.ДатаНачалаДоп;
   ЧетвертаяСтраницаТ2.Параметры["ДатаПо"+инд] = Отпуска.ДатаОкончанияДоп;
   ЧетвертаяСтраницаТ2.Параметры["ДнейОтпуска"+инд] = Отпуска.ПродолжительностьДоп;
   ЧетвертаяСтраницаТ2.Параметры["РабочийГодС"+инд] = Отпуска.РабочийГодС;
   ЧетвертаяСтраницаТ2.Параметры["РабочийГодПо"+инд] = Отпуска.РабочийГодПо;
   ЧетвертаяСтраницаТ2.Параметры["ОснованиеОтпуска"+инд] = "Пр.№ "+ СокрЛП(Отпуска.НомерПриказа) +" от " + Формат(Отпуска.ДатаПриказа, "ДФ=dd.MM.yyyy") + " " + Отпуска.Основание;

  КонецЕсли;

 КонецЦикла;
---
СсылкаНаобъект.Ссылка
---
Отладчиком посмотреть не предлагать?
---
нет
---
Добрый день! Может чем поможет - когда-то писал, на основании чей-то. Тут все работает.
---
скорее всего потому что в параметр сотрудник вы устанавливаете значение физлицо
---
тоже про это подумала, но не знаю как тогда передать определенного сотрудника в параметр
---
СсылкаНаобъект.Ссылка
---
спасибо , разобралась!