Ребят, может и глупый вопрос, но не работает.
Смотрите, есть база УАС, в ней есть ВПФ задание на печать, в ней нужно добавить один параметр, контрагент.
Создал реквизит ссылканаобъект, со ссылкой цна длокумент реализация товаров и услуг откуда должен он подтягиваться, пишу код

```1c
    Областьшапка.параметры.покупатель = ссылканаобъект.контрагент.наименование;
```

Но данная строка не работает, в чем может быть проблема?
---
судя по коду,
```1c
    ВыборкаПоШапке.Ссылка
```
 это путь до документа.
Возможно я написал не верно вам выше...

Попробуйте:

```1c
    ТекущаяСсылка.Контрагент
```
---
Ну так
1. "Создал реквизит ссылканаобъект". Обычно в Функции Формирования ПечатнойФормы указаны параметры, один из которых СсылкаНаОбъект, создавать ничего не нужно.
2. В печатную форму не обязательно выводить НАИМЕНОВАНИЕ.
и вот теперь ВАЖНО
Откройте форму элемента справочника Контрагента и проверьте есть ли там такой реквизит как наименование, и точно ли он в конфе так называется?
А лучше откройте форму элемента Документа для которого создаете ПФ, и посмотрите как называется реквизит в котором выводится КОнтрагент, и в коде выводите просто СсылкаНаОбъект.РеквизитИзФормыДокумента
---
Реквизит такой есть.
ссылканаобъект идет к документу реализация товаров и услуг
---
судя по ответам, все должно работать.
Что бы нам не гадать, прикрепите в следующий ответ, функцию формирования ПФ, можно не полностью.
хотя бы объявление функции, далее блок кода которым вы получаете область макета, заполняете параметры и выводите область
Речь про Областьшапка
---
Пустая ссылка
---
"Создал реквизит" - реквизит чего ?
---
В ВПФ
---
Подскажите, как сделать не пустую ссылку?
---
Очевидно что этому реквизиту должно где указываться значение.
---
А зачем создавать новый реквизит внешней печатной формы. Так же и так ссылка на объект передается в параметрах печати. Вот оттуда ее и нужно брать.
---
Я правильно понимаю, что реквизит типа СправочникСсылка.Контрагенты, а вставить вы туда пытаетесь наименование, т.е. строку?
---
Ничего он не пытается туда вставить.
---
```1c
    ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
    ОбластьОснование = Макет.ПолучитьОбласть("Основание");
    ОбластьЗаданиеНаПеревозку = Макет.ПолучитьОбласть("ЗаданиеНаПеревозку");
    СтруктураПараметров = Новый Структура;
    //СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Контрагент);
    //СтруктураПараметров.Вставить("Покупатель", ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе));
    //ОбластьШапка.Параметры.Покупатель = СведенияОПокупателе;

    // Области макета для склада со справочным использованием ячеек, с использованием упаковок, с кодами.
    ОбластьШапкаТаблицыОснова = Макет.ПолучитьОбласть("ШапкаТаблицыОснова");
    ОбластьРабочийУчастокОснова = Макет.ПолучитьОбласть("РабочийУчастокОснова");
    ОбластьСтрокаТаблицыОснова = Макет.ПолучитьОбласть("СтрокаТаблицыОснова");
    ОбластьПодвалТаблицыОснова = Макет.ПолучитьОбласть("ПодвалТаблицыОснова");

    ОбластьШапкаТаблицыОснова.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада со справочным использованием ячеек, без использования упаковок, с кодами.
    ОбластьШапкаТаблицыБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковок");
    ОбластьРабочийУчастокБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковок");
    ОбластьСтрокаТаблицыБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковок");
    ОбластьПодвалТаблицыБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковок");

    ОбластьШапкаТаблицыБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада без справочного использования ячеек, с использованием упаковок, с кодами.
    ОбластьШапкаТаблицыБезЯчеек = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеек");
    ОбластьРабочийУчастокБезЯчеек = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеек");
    ОбластьСтрокаТаблицыБезЯчеек = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеек");
    ОбластьПодвалТаблицыБезЯчеек = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеек");

    ОбластьШапкаТаблицыБезЯчеек.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада без справочного использования ячеек, без использования упаковок, с кодами.
    ОбластьШапкаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковок");
    ОбластьРабочийУчастокБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковок");
    ОбластьСтрокаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковок");
    ОбластьПодвалТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковок");

    ОбластьШапкаТаблицыБезЯчеекБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада со справочным использованием ячеек, с использованием упаковок, без кодов.
    ОбластьШапкаТаблицыБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезКодов");
    ОбластьРабочийУчастокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезКодов");
    ОбластьСтрокаТаблицыБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезКодов");
    ОбластьПодвалТаблицыБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезКодов");

    // Области макета для склада со справочным использованием ячеек, без использования упаковок, без кодов.
    ОбластьШапкаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковокБезКодов");
    ОбластьРабочийУчастокБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковокБезКодов");
    ОбластьСтрокаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковокБезКодов");
    ОбластьПодвалТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковокБезКодов");

    // Области макета для склада без справочного использования ячеек, с использованием упаковок, без кодов.
    ОбластьШапкаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезКодов");
    ОбластьРабочийУчастокБезЯчеекБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезКодов");
    ОбластьСтрокаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезКодов");
    ОбластьПодвалТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезКодов");

    // Области макета для склада без справочного использования ячеек, без использования упаковок, без кодов.
    ОбластьШапкаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковокБезКодов");
    ОбластьРабочийУчастокБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковокБезКодов");
    ОбластьСтрокаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковокБезКодов");
    ОбластьПодвалТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковокБезКодов");
```
---
Читается сложно, воспользуйтесь кнопкой "</>", она оформит код в читаемый.
И еще нет строки в которой вы объявили Функцию формирования печатной формы.
Не увидел что бы хоть одна из областей выводилась

Увидел что вы передаете в переменную ОбластьШапка, но не вижу заполнение параметров, очень странная не информативная выдержка из кода...
---
```1c
    УстановитьПривилегированныйРежим(Истина);

    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_"; //+ ПараметрыПечати.ИмяФормы;
    НомерТипаДокумента = 0;

    Если ТипЗнч(МассивОбъектов) = Тип("Соответствие") Тогда
    СтруктураТипов = МассивОбъектов;
    Иначе
    СтруктураТипов = ОбщегоНазначенияУТ.СоответствиеМассивовПоТипамОбъектов(МассивОбъектов);
    КонецЕсли;

    Для Каждого СтруктураОбъектов Из СтруктураТипов Цикл

    НомерТипаДокумента = НомерТипаДокумента + 1;
    Если НомерТипаДокумента > 1 Тогда
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    КолонкаКодов = ФормированиеПечатныхФорм.ИмяДополнительнойКолонки();
    ВыводитьКоды = ЗначениеЗаполнено(КолонкаКодов);
    ВыводитьУпаковки = ПолучитьФункциональнуюОпцию("ИспользоватьУпаковкиНоменклатуры")
    И Не(ПараметрыПечати.Свойство("БезДопКолонки"));
    ВыводитьПоУчету = ВыводитьУпаковки;
    ЗаданиеНаДобор = ПараметрыПечати = "ЗаданиеНаДобор";
    //.ИмяФормы

    //Макет = УправлениеПечатью.МакетПечатнойФормы("Обработка.ПечатьЗаданияНаОтборРазмещениеТоваров.ПФ_MXL_ЗаданиеНаОтборРазмещениеТовара");
    Макет = ПолучитьМакет("ПФ_MXL_ЗаданиеНаОтборРазмещениеТовара");
    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

    ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
    ОбластьОснование = Макет.ПолучитьОбласть("Основание");
    ОбластьЗаданиеНаПеревозку = Макет.ПолучитьОбласть("ЗаданиеНаПеревозку");

    //СведенияОПокупателе = Документы.РеализацияТоваровУслуг.Выбрать("Контрагент");
    //ОбластьШапка.Параметры.Покупатель = СведенияОПокупателе;

    // Области макета для склада со справочным использованием ячеек, с использованием упаковок, с кодами.
    ОбластьШапкаТаблицыОснова = Макет.ПолучитьОбласть("ШапкаТаблицыОснова");
    ОбластьРабочийУчастокОснова = Макет.ПолучитьОбласть("РабочийУчастокОснова");
    ОбластьСтрокаТаблицыОснова = Макет.ПолучитьОбласть("СтрокаТаблицыОснова");
    ОбластьПодвалТаблицыОснова = Макет.ПолучитьОбласть("ПодвалТаблицыОснова");

    ОбластьШапкаТаблицыОснова.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада со справочным использованием ячеек, без использования упаковок, с кодами.
    ОбластьШапкаТаблицыБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковок");
    ОбластьРабочийУчастокБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковок");
    ОбластьСтрокаТаблицыБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковок");
    ОбластьПодвалТаблицыБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковок");

    ОбластьШапкаТаблицыБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада без справочного использования ячеек, с использованием упаковок, с кодами.
    ОбластьШапкаТаблицыБезЯчеек = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеек");
    ОбластьРабочийУчастокБезЯчеек = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеек");
    ОбластьСтрокаТаблицыБезЯчеек = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеек");
    ОбластьПодвалТаблицыБезЯчеек = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеек");

    ОбластьШапкаТаблицыБезЯчеек.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада без справочного использования ячеек, без использования упаковок, с кодами.
    ОбластьШапкаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковок");
    ОбластьРабочийУчастокБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковок");
    ОбластьСтрокаТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковок");
    ОбластьПодвалТаблицыБезЯчеекБезУпаковок = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковок");

    ОбластьШапкаТаблицыБезЯчеекБезУпаковок.Параметры.ИмяКолонкиКодов = КолонкаКодов;

    // Области макета для склада со справочным использованием ячеек, с использованием упаковок, без кодов.
    ОбластьШапкаТаблицыБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезКодов");
    ОбластьРабочийУчастокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезКодов");
    ОбластьСтрокаТаблицыБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезКодов");
    ОбластьПодвалТаблицыБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезКодов");

    // Области макета для склада со справочным использованием ячеек, без использования упаковок, без кодов.
    ОбластьШапкаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезУпаковокБезКодов");
    ОбластьРабочийУчастокБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезУпаковокБезКодов");
    ОбластьСтрокаТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезУпаковокБезКодов");
    ОбластьПодвалТаблицыБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезУпаковокБезКодов");

    // Области макета для склада без справочного использования ячеек, с использованием упаковок, без кодов.
    ОбластьШапкаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезКодов");
    ОбластьРабочийУчастокБезЯчеекБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезКодов");
    ОбластьСтрокаТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезКодов");
    ОбластьПодвалТаблицыБезЯчеекБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезКодов");

    // Области макета для склада без справочного использования ячеек, без использования упаковок, без кодов.
    ОбластьШапкаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ШапкаТаблицыБезЯчеекБезУпаковокБезКодов");
    ОбластьРабочийУчастокБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("РабочийУчастокБезЯчеекБезУпаковокБезКодов");
    ОбластьСтрокаТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("СтрокаТаблицыБезЯчеекБезУпаковокБезКодов");
    ОбластьПодвалТаблицыБезЯчеекБезУпаковокБезКодов = Макет.ПолучитьОбласть("ПодвалТаблицыБезЯчеекБезУпаковокБезКодов");

    //ОбластьШапка.Параметры.Покупатель = СсылкаНаОбъект.Номер;
    ОбластьИсполнитель = Макет.ПолучитьОбласть("Исполнитель");

    ЭтоЗаданиеНаРазмещение = Неопределено;
    ПервыйДокумент = Истина;

    Если ПараметрыПечати = "ЗаданиеНаПересчет" Тогда
    //.ИмяФормы
    ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
    ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
    ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
    ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(По учету)'");
    ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
    ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
    ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
    ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличество = НСтр("ru='(Факт)'");
    НазваниеФормы = НСтр("ru = 'Задание на пересчет товаров'");
    ИначеЕсли ПараметрыПечати = "ЗаданиеНаРазмещение" Тогда
    //.ИмяФормы
    Если СтруктураОбъектов.Ключ = "Документ.РасходныйОрдерНаТовары"
    ИЛИ СтруктураОбъектов.Ключ = "Документ.ПорчаТоваров"
    ИЛИ СтруктураОбъектов.Ключ = "Документ.ПересортицаТоваров"
    ИЛИ СтруктураОбъектов.Ключ = "Документ.СписаниеНедостачТоваров"
    ИЛИ СтруктураОбъектов.Ключ = "Документ.ИнвентаризационнаяОпись" Тогда
    Для Каждого РасходныйОрдер Из СтруктураОбъектов.Значение Цикл
    ТекстСообщения = НСтр("ru = 'Печать задания на размещение для документа "%Документ%" не предусмотрена.'");
    ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Документ%", РасходныйОрдер);
    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
    КонецЦикла;
    Продолжить;
    КонецЕсли;
    ЭтоЗаданиеНаРазмещение = Истина;
    НазваниеФормы = НСтр("ru = 'Задание на размещение товаров'");
    ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");

    ИначеЕсли ПараметрыПечати = "ЗаданиеНаОтбор" Тогда
    //.ИмяФормы
    ЭтоЗаданиеНаРазмещение = Ложь;
    НазваниеФормы = НСтр("ru = 'Задание на отбор товаров'");
    ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличествоУпаковки = НСтр("ru='(упаковок)'");
    КонецЕсли;

    Если ЗаданиеНаДобор Тогда
    ЭтоЗаданиеНаРазмещение = Ложь;
    НазваниеФормы = НСтр("ru = 'Задание на добор товаров'");
    ОбластьШапкаТаблицыОснова.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезКодов.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезЯчеек.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
    ОбластьШапкаТаблицыБезЯчеекБезКодов.Параметры.НадписьКоличество = НСтр("ru='(упаковок)'");
    ДанныеДляПечати =
    Обработки.ПроверкаКоличестваТоваровВДокументе.ПолучитьДанныеДляПечатнойФормыЗаданиеНаДоборТоваров(ПараметрыПечати,
    ПараметрыПечати.Ордер);
    Иначе
    МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(СтруктураОбъектов.Ключ);
    ДанныеДляПечати = МенеджерОбъекта.ПолучитьДанныеДляПечатнойФормыОтборРазмещениеТоваров(ПараметрыПечати,
    СтруктураОбъектов.Значение);
    КонецЕсли;

    ДанныеПоШапке = ДанныеДляПечати.РезультатПоШапке;
    ДанныеПоТабличнойЧасти = ДанныеДляПечати.РезультатПоТабличнойЧасти;
    ДанныеПоУпаковкам = ДанныеДляПечати.РезультатПоУпаковкам;
    ДанныеПоСериям = ДанныеДляПечати.РезультатПоСериям;

    ДанныеПоРаспоряжениям = Неопределено;
    ДанныеДляПечати.Свойство("РезультатПоРаспоряжениям", ДанныеПоРаспоряжениям);

    ЕстьПолеИспользоватьСерииНоменклатуры = ДанныеПоШапке.Колонки.Найти("ИспользоватьСерииНоменклатуры") <> Неопределено;

    ВыборкаПоШапке = ДанныеПоШапке.Выбрать();
    ВыборкаПоСсылкам = ДанныеПоТабличнойЧасти.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    ВыборкаПоСериям = ДанныеПоСериям.Выбрать();

    Если ПараметрыПечати <> "ЗаданиеНаПересчет" И СтруктураОбъектов.Ключ <> "Документ.ПересчетТоваров" Тогда
    //.ИмяФормы
    ВыборкаПоУпаковкам = ДанныеПоУпаковкам.Выбрать();
    КонецЕсли;

    Если СтруктураОбъектов.Ключ = "Документ.РасходныйОрдерНаТовары" Тогда
    ВыборкаПоРаспоряжениям = ДанныеПоРаспоряжениям.Выбрать();
    КонецЕсли;

    ТекущаяСсылка = Неопределено;

    Пока ВыборкаПоШапке.Следующий() Цикл

    ТекстСообщения = ";

    Если Не ЗначениеЗаполнено(ВыборкаПоШапке.СкладПредставление) Тогда
    ТекстСообщения = НСтр("ru='Невозможно напечатать %НазваниеФормы% для "%Документ%",
    |т.к. не заполнено поле "Склад".'");

    ИначеЕсли ВыборкаПоШапке.НарушенаОрдернаяСхема Тогда
    ТекстСообщения = НСтр("ru='Невозможно напечатать %НазваниеФормы% для "%Документ%",
    |т.к. на складе "%Склад%" используется ордерная схема, поэтому печать задания должна вестись из ордера.'");

    ИначеЕсли (ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ПриходныйОрдерНаТовары")
    ИЛИ ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ОрдерНаПеремещениеТоваров")
    ИЛИ ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.РасходныйОрдерНаТовары"))
    И ВыборкаПоШапке.ИспользуетсяАдресноеХранение Тогда

    ТекстСообщения = НСтр("ru='Невозможно напечатать %НазваниеФормы% для "%Документ%",
    |т.к. для склада (помещения) с ячейками, используемыми для хранения остатков номенклатуры, эта печатная форма не предусмотрена.
    |Печать задания на отбор (размещение) возможна из документа "Отбор (размещение) товаров".'");

    ИначеЕсли ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ПересчетТоваров")
    И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ВыборкаПоШапке.Ссылка, "Статус")
    = Перечисления.СтатусыПересчетовТоваров.Подготовлено Тогда
    ТекстСообщения = НСтр("ru='Невозможно напечатать "%НазваниеФормы%" для "%Документ%",
    |в статусе "%СтатусПересчета%".'");
    ТекстСообщения = СтрЗаменить(ТекстСообщения, "%СтатусПересчета%", Перечисления.СтатусыПересчетовТоваров.Подготовлено);
    ИначеЕсли ТекущаяСсылка <> ВыборкаПоШапке.Ссылка
    И НЕ ВыборкаПоСсылкам.НайтиСледующий(Новый Структура("Ссылка", ВыборкаПоШапке.Ссылка)) Тогда
    Если ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ЗаказКлиента") Тогда
    ТекстСообщения = НСтр("ru='Невозможно напечатать "%НазваниеФормы%" для "%Документ%",
    |т.к. в табличной части отсутствуют строки номенклатуры с типом "Товар" и действием "Отгрузить" или "Отгрузить обособленно".'");
    ИначеЕсли ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.ЗаявкаНаВозвратТоваровОтКлиента") Тогда
    ТекстСообщения = НСтр("ru='Невозможно напечатать "%НазваниеФормы%" для "%Документ%",
    |т.к. в табличной части отсутствуют строки номенклатуры с типом "Товар" и действием "Отгрузить".'");
    Иначе
    ТекстСообщения = НСтр("ru='Невозможно напечатать "%НазваниеФормы%" для "%Документ%",
    |т.к. в табличной части отсутствует отгружаемая номенклатура с типом "Товар".'");
    КонецЕсли;
    ИначеЕсли ТекущаяСсылка <> ВыборкаПоШапке.Ссылка Тогда
    ТекущаяСсылка = ВыборкаПоШапке.Ссылка;
    КонецЕсли;

    Если ЗначениеЗаполнено(ТекстСообщения) Тогда
    ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Документ%", ВыборкаПоШапке.СсылкаПредставление);
    ТекстСообщения = СтрЗаменить(ТекстСообщения,
    "%Склад%",
    СкладыСервер.ПолучитьПредставлениеСклада(ВыборкаПоШапке.СкладПредставление,
    ВыборкаПоШапке.ПомещениеПредставление));
    ТекстСообщения = СтрЗаменить(ТекстСообщения,"%НазваниеФормы%",НазваниеФормы);
    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
    Продолжить;
    КонецЕсли;

    ИспользоватьСерии = Ложь;

    Если ЕстьПолеИспользоватьСерииНоменклатуры Тогда
    ИспользоватьСерии = ВыборкаПоШапке.ИспользоватьСерииНоменклатуры;
    КонецЕсли;

    ИспользуетсяСправочноеХранение = ВыборкаПоШапке.ИспользуетсяСправочноеХранение;

    ВыборкаПоСкладам = ВыборкаПоСсылкам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаПоСкладам.НайтиСледующий(Новый Структура("Склад",ВыборкаПоШапке.Склад)) Цикл
    ВыборкаРабочиеУчастки = ВыборкаПоСкладам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    Если Не ПервыйДокумент Тогда
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    Если ДанныеПоШапке.Колонки.Найти("ВыводитьПоУчету") <> Неопределено И ПараметрыПечати = "ЗаданиеНаПересчет" Тогда
    //.ИмяФормы
    ВыводитьПоУчету = ВыборкаПоШапке.ВыводитьПоУчету;
    КонецЕсли;

    Если ВыводитьКоды И ИспользуетсяСправочноеХранение И (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыОснова;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокОснова;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыОснова;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыОснова;
    ИначеЕсли ВыводитьКоды И ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезУпаковок;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезУпаковок;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезУпаковок;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезУпаковок;
    ИначеЕсли ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеек;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеек;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеек;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеек;
    ИначеЕсли ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеекБезУпаковок;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеекБезУпаковок;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеекБезУпаковок;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеекБезУпаковок;
    ИначеЕсли НЕ ВыводитьКоды И ИспользуетсяСправочноеХранение И (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезКодов;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезКодов;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезКодов;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезКодов;
    ИначеЕсли НЕ ВыводитьКоды И ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезУпаковокБезКодов;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезУпаковокБезКодов;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезУпаковокБезКодов;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезУпаковокБезКодов;
    ИначеЕсли НЕ ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеекБезКодов;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеекБезКодов;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеекБезКодов;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеекБезКодов;
    ИначеЕсли НЕ ВыводитьКоды И НЕ ИспользуетсяСправочноеХранение И НЕ (ВыводитьУпаковки И ВыводитьПоУчету) Тогда
    ОбластьШапкаТаблицы = ОбластьШапкаТаблицыБезЯчеекБезУпаковокБезКодов;
    ОбластьРабочийУчасток = ОбластьРабочийУчастокБезЯчеекБезУпаковокБезКодов;
    ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыБезЯчеекБезУпаковокБезКодов;
    ОбластьПодвалТаблицы = ОбластьПодвалТаблицыБезЯчеекБезУпаковокБезКодов;
    КонецЕсли;

    ПервыйДокумент = Ложь;
    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
    ПредставлениеСклада = СкладыСервер.ПолучитьПредставлениеСклада(ВыборкаПоШапке.СкладПредставление,
    ВыборкаПоШапке.ПомещениеПредставление);

    РеквизитыДокумента = Новый Структура("Номер, Дата, Префикс, Представление");
    ЗаполнитьЗначенияСвойств(РеквизитыДокумента, ВыборкаПоШапке);
    РеквизитыДокумента.Представление = ВыборкаПоШапке.СсылкаПредставление;

    ПредставлениеРаспоряжения = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента,, Истина);

    ОбластьЗаголовок.Параметры.ТекстЗаголовка = НазваниеФормы;
    ШтрихкодированиеПечатныхФорм.ВывестиШтрихкодВТабличныйДокумент(ТабличныйДокумент, Макет, ОбластьЗаголовок, ВыборкаПоШапке.Ссылка);

    ТабличныйДокумент.Вывести(ОбластьЗаголовок);

    ОбластьШапка.Параметры.ПредставлениеСклада = ПредставлениеСклада;
    ОбластьШапка.Параметры.ПредставлениеРаспоряжения = ПредставлениеРаспоряжения;

    ТабличныйДокумент.Вывести(ОбластьШапка);

    Если ТипЗнч(ВыборкаПоШапке.Ссылка) = Тип("ДокументСсылка.РасходныйОрдерНаТовары") Тогда

    Счетчик = 0;
    ПредставлениеОснований = ";
    ПервоеРаспоряжение = Истина;
    РеквизитыДокумента = Новый Структура("Дата, Номер, Префикс, Представление");

    Пока ВыборкаПоРаспоряжениям.НайтиСледующий(Новый Структура("Ссылка", ВыборкаПоШапке.Ссылка)) Цикл

    РеквизитыДокумента.Дата = ВыборкаПоРаспоряжениям.ОснованиеДата;
    РеквизитыДокумента.Номер = ВыборкаПоРаспоряжениям.ОснованиеНомер;
    РеквизитыДокумента.Префикс = ";
    РеквизитыДокумента.Представление = ВыборкаПоРаспоряжениям.ОснованиеПредставление;

    ПредставлениеОснования = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента);

    Если Не ПервоеРаспоряжение Тогда
    ПредставлениеОснований = ПредставлениеОснований + ", ";
    КонецЕсли;

    ПервоеРаспоряжение = Ложь;

    ПредставлениеОснований = ПредставлениеОснований + ПредставлениеОснования;

    Счетчик = Счетчик + 1;

    КонецЦикла;

    ЗаголовокОснования = ";
    Если Счетчик > 1 Тогда
    ЗаголовокОснования = НСтр("ru = 'Основания:'");
    Иначе
    ЗаголовокОснования = НСтр("ru = 'Основание:'");
    КонецЕсли;

    ОбластьОснование.Параметры.ПредставлениеОснований = ПредставлениеОснований;
    ОбластьОснование.Параметры.Основания = ЗаголовокОснования;

    ТабличныйДокумент.Вывести(ОбластьОснование);

    Если ВыборкаПоШапке.ОтгрузкаПоЗаданиюНаПеревозку Тогда

    РеквизитыДокумента.Дата = ВыборкаПоШапке.ЗаданиеНаПеревозкуДата;
    РеквизитыДокумента.Номер = ВыборкаПоШапке.ЗаданиеНаПеревозкуНомер;
    РеквизитыДокумента.Префикс = ";
    РеквизитыДокумента.Представление = ВыборкаПоШапке.ЗаданиеНаПеревозкуПредставление;

    ОбластьЗаданиеНаПеревозку.Параметры.ЗаданиеНаПеревозкуПредставление =
    ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(РеквизитыДокумента);
    ОбластьЗаданиеНаПеревозку.Параметры.ПорядокДоставки = ВыборкаПоШапке.ПорядокДоставки;

    ТабличныйДокумент.Вывести(ОбластьЗаданиеНаПеревозку);

    КонецЕсли;

    КонецЕсли;

    Если ПараметрыПечати = "ЗаданиеНаПересчет" Тогда
    //.ИмяФормы
    ОбластьИсполнитель.Параметры.ИсполнительПредставление = ФизическиеЛицаУТ.ФамилияИнициалыФизЛица(ВыборкаПоШапке.ИсполнительПредставление, РеквизитыДокумента.Дата);
    ТабличныйДокумент.Вывести(ОбластьИсполнитель);
    КонецЕсли;

    ВыводитьУчастки = Ложь;
    ВыводитьУчастки = (ВыборкаПоШапке.ИспользованиеРабочихУчастков = Перечисления.ИспользованиеСкладскихРабочихУчастков.Использовать);

    ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);

    НомерСтроки = 1;

    Пока ВыборкаРабочиеУчастки.Следующий() Цикл

    Если ВыводитьУчастки И ЗначениеЗаполнено(ВыборкаРабочиеУчастки.РабочийУчасток) Тогда
    ОбластьРабочийУчасток.Параметры.Заполнить(ВыборкаРабочиеУчастки);
    ТабличныйДокумент.Вывести(ОбластьРабочийУчасток);
    КонецЕсли;

    ВыборкаНомерСтроки = ВыборкаРабочиеУчастки.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    Пока ВыборкаНомерСтроки.Следующий() Цикл

    ВыборкаПоТовару = ВыборкаНомерСтроки.Выбрать();

    Пока ВыборкаПоТовару.Следующий() Цикл

    Если ВыборкаПоТовару.НастройкаИспользованияСерий = Перечисления.НастройкиИспользованияСерийНоменклатуры.ЭкземплярТовара Тогда

    ОбластьСтрокаТаблицы.Параметры.Заполнить(ВыборкаПоТовару);
    ОбластьСтрокаТаблицы.Параметры.НомерСтроки = НомерСтроки;
    НомерСтроки = НомерСтроки + 1;

    Если ВыводитьКоды Тогда
    ОбластьСтрокаТаблицы.Параметры.Артикул = ВыборкаПоТовару[КолонкаКодов];
    КонецЕсли;

    СтруктураПоиска = Новый Структура("Ссылка, Склад, РабочийУчасток, Номенклатура, Характеристика");
    ЗаполнитьЗначенияСвойств(СтруктураПоиска, ВыборкаПоТовару);

    СтрокаСерий = ";
    Пока ВыборкаПоСериям.НайтиСледующий(СтруктураПоиска) Цикл
    СтрокаСерий = СтрокаСерий + ВыборкаПоСериям.ПредставлениеСерии + ", ";
    КонецЦикла;

    Если СтрДлина(СтрокаСерий) <> 0 Тогда
    СтрокаСерий = Лев(СтрокаСерий, СтрДлина(СтрокаСерий) - 2);
    КонецЕсли;

    ОбластьСтрокаТаблицы.Параметры.Товар = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
    ВыборкаПоТовару.ПредставлениеНоменклатуры,
    ВыборкаПоТовару.ПредставлениеХарактеристики,
    , // Упаковка

    СтрокаСерий) ;

    Если ИспользуетсяСправочноеХранение Тогда

    ВыборкаПоТовару.Сбросить();

    ДопЯчейки = ";
    Пока ВыборкаПоТовару.Следующий() Цикл
    ДопЯчейки = ДопЯчейки + ВыборкаПоТовару.ЯчейкаПредставление + Символы.ПС;
    КонецЦикла;
    ОбластьСтрокаТаблицы.Параметры.ДополнительныеЯчейки = ДопЯчейки;
    КонецЕсли;

    ТабличныйДокумент.Вывести(ОбластьСтрокаТаблицы);

    Иначе

    ТекНоменклатура = Неопределено;
    ТекХарактеристика = Неопределено;
    ТекСерия = Неопределено;
    Количество = Неопределено;

    Если ВыборкаПоТовару.Номенклатура <> ТекНоменклатура
    И ВыборкаПоТовару.Характеристика <> ТекХарактеристика
    И ВыборкаПоТовару.Серия <> ТекСерия Тогда

    Количество = ВыборкаПоТовару.Количество;

    КонецЕсли;

    ОбластьСтрокаТаблицы.Параметры.Заполнить(ВыборкаПоТовару);
    ОбластьСтрокаТаблицы.Параметры.НомерСтроки = НомерСтроки;
    НомерСтроки = НомерСтроки + 1;

    Если ВыводитьКоды Тогда
    ОбластьСтрокаТаблицы.Параметры.Артикул = ВыборкаПоТовару[КолонкаКодов];
    КонецЕсли;

    ОбластьСтрокаТаблицы.Параметры.Товар = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
    ?(ЗначениеЗаполнено(ВыборкаПоТовару.Номенклатура),
    ВыборкаПоТовару.ПредставлениеНоменклатуры,
    НСтр("ru = '<пустая ячейка>'")),
    ВыборкаПоТовару.ПредставлениеХарактеристики,
    , // Упаковка
    ВыборкаПоТовару.ПредставлениеСерии) + ", " + ВыборкаПоТовару.Номенклатура.Производитель.Наименование + ", " + ВыборкаПоТовару.Номенклатура.УАС_СтранаПроизводителя.Наименование;

    СтрокаКоличестваУпаковок = ";
    СтрокаИменованийУпаковок = ";

    ПредставлениеЕдининицыИзмеренияУпаковки = ВыборкаПоТовару.ПредставлениеБазовойЕдиницыИзмерения;

    Если ИспользуетсяСправочноеХранение Тогда

    ДопЯчейки = ВыборкаПоТовару.ЯчейкаПредставление + Символы.ПС;
    СтуктураПоискаТовара = Новый Структура;
    СтуктураПоискаТовара.Вставить("Номенклатура", ВыборкаПоТовару.Номенклатура);
    СтуктураПоискаТовара.Вставить("Характеристика", ВыборкаПоТовару.Характеристика);
    СтуктураПоискаТовара.Вставить("Серия", ВыборкаПоТовару.Серия);

    Пока ВыборкаПоТовару.НайтиСледующий(СтуктураПоискаТовара) Цикл
    ДопЯчейки = ДопЯчейки + ВыборкаПоТовару.ЯчейкаПредставление + Символы.ПС;
    КонецЦикла;
    ОбластьСтрокаТаблицы.Параметры.ДополнительныеЯчейки = ДопЯчейки;
    КонецЕсли;

    Если (ВыводитьУпаковки ИЛИ ВыводитьПоУчету) Тогда
    Если ПараметрыПечати <> "ЗаданиеНаПересчет" И СтруктураОбъектов.Ключ <> "Документ.ПересчетТоваров" Тогда
    //.ИмяФормы
    СтруктураПоиска = Новый Структура("Ссылка,Склад,РабочийУчасток,НомерСтроки");
    ЗаполнитьЗначенияСвойств(СтруктураПоиска, ВыборкаПоТовару);
    ВыборкаПоУпаковкам.Сбросить();
    Пока ВыборкаПоУпаковкам.НайтиСледующий(СтруктураПоиска) Цикл
    Если Количество <> Неопределено Тогда
    КоличествоВДокумент = Цел(Количество / ВыборкаПоУпаковкам.КоличествоВУпаковке);
    Если КоличествоВДокумент > 0 Тогда
    СтрокаКоличестваУпаковок = СтрокаКоличестваУпаковок + КоличествоВДокумент + Символы.ПС;
    СтрокаИменованийУпаковок = СтрокаИменованийУпаковок
    + ВыборкаПоУпаковкам.ПредставлениеЕдининицыИзмеренияУпаковки
    + Символы.ПС;
    Если Количество = КоличествоВДокумент * ВыборкаПоУпаковкам.КоличествоВУпаковке Тогда
    Количество = Неопределено;
    Иначе
    Количество = Количество - КоличествоВДокумент * ВыборкаПоУпаковкам.КоличествоВУпаковке;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;

    Если Количество <> Неопределено Тогда
    СтрокаКоличестваУпаковок = СтрокаКоличестваУпаковок + Количество;
    СтрокаИменованийУпаковок = СтрокаИменованийУпаковок + ПредставлениеЕдининицыИзмеренияУпаковки;
    КонецЕсли;
    ОбластьСтрокаТаблицы.Параметры.КоличествоУпаковок = СтрокаКоличестваУпаковок;
    ОбластьСтрокаТаблицы.Параметры.ПредставлениеЕдининицыИзмеренияУпаковки = СтрокаИменованийУпаковок;
    КонецЕсли;
    КонецЕсли;
    ТабличныйДокумент.Вывести(ОбластьСтрокаТаблицы);
    КонецЕсли;
    КонецЦикла;
    КонецЦикла;
    КонецЦикла;

    ТабличныйДокумент.Вывести(ОбластьПодвалТаблицы);

    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(
    ТабличныйДокумент,
    НомерСтрокиНачало,
    ОбъектыПечати,
    ВыборкаПоШапке.Ссылка);

    КонецЦикла;
    КонецЦикла;

    ТекстСообщения = ";
    Если ВыборкаПоШапке.Количество() = 0 И СтруктураОбъектов.Ключ = "Документ.ВводОстатков" Тогда
    Если ПолучитьФункциональнуюОпцию("ИспользоватьМногооборотнуюТару") Тогда
    ТекстСообщения = НСтр("ru='Для данного типа операции документа "Ввод остатков"
    |печать "%НазваниеФормы%" не требуется.
    |Печать возможна только для операций типа "Собственные товары", "Полученные на комиссию товары"
    |и "Принятая от поставщиков возвратная тара"'");
    Иначе
    ТекстСообщения = НСтр("ru='Для данного типа операции документа "Ввод остатков"
    |печать "%НазваниеФормы%" не требуется.
    |Печать возможна только для операций типа "Собственные товары" и "Полученные на комиссию товары"'");
    КонецЕсли;
    ТекстСообщения = СтрЗаменить(ТекстСообщения,"%НазваниеФормы%",НазваниеФормы);
    ТекстСообщения = СтрЗаменить(ТекстСообщения,"%Документ%", ВыборкаПоШапке.СсылкаПредставление);
    ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
    КонецЕсли;

    КонецЦикла;

    ТабличныйДокумент.АвтоМасштаб = Истина;

    Возврат ТабличныйДокумент;

    КонецФункции
```
---
ОбластьШапка.Параметры.ПредставлениеСклада = ПредставлениеСклада;
                ОбластьШапка.Параметры.ПредставлениеРаспоряжения = ПредставлениеРаспоряжения;

                ТабличныйДокумент.Вывести(ОбластьШапка);

вот тут попробуйте дописать:

```1c
    ОбластьШапка.Параметры.Покупатель= ВыборкаПоШапке.Контрагент;
```
---
Поле объекта не обнаружено (Контрагент)
{ВнешняяОбработка.ЗаданиеНаПечать.МодульОбъекта(409)}: ОбластьШапка.Параметры.Покупатель = ВыборкаПоШапке.Контрагент;
{ВнешняяОбработка.ЗаданиеНаПечать.МодульОбъекта(70)}: УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
---
судя по коду,
```1c
    ВыборкаПоШапке.Ссылка
```
 это путь до документа.
Возможно я написал не верно вам выше...

Попробуйте:

```1c
    ТекущаяСсылка.Контрагент
```
---
ОГРОМНОЕ СПАСИБО ТЕБЕ, добрый человек, заработало!
---
А зачем закоментирована эта строка
//СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Контрагент);

Вот тут уже контрагент в списке параметров ДанныеПечати, там же скорее всего и ссылка на документ.
---
там не понятно что истина, а что ТС написал сам и закомментировал....
в следующем комментарии, где код оформлен, нет этой строки, о которой вы пишите, но есть:

```1c
    //СведенияОПокупателе = Документы.РеализацияТоваровУслуг.Выбрать("Контрагент");
    //ОбластьШапка.Параметры.Покупатель = СведенияОПокупателе;
```

поэтому не понятно.... видимо это уже то что Автор написал сам, но не сработало
---
Нет там ссылки на документ
---
СведенияОПокупателе = Документы.РеализацияТоваровУслуг.Выбрать("Контрагент");

- фигня написана.