Здравствуйте! Обращаюсь со второй темой, есть Печатная Форма для конфигурации ЗУП 3.1 (релиз 3.1.1.103) платформа 8.3.9.1850. Пока только начал делать попытки и программировать но время поджимает. По некоторым причинам пф не работает, хотелось бы пробежаться отладчиком. Но как это реализовать в печатной форме мозгов решить не хватает. Прикрепляю печатную форму и код модуля формы. Подскажите, кто чем может)

P. S. Требуется из документа "Командировка" распечатать "Приказ на Служебную поездку"

Модуль формы:

```1c
    &НаСервере
    Функция ПечатьНаСервере()

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

    КонецФункции

    &НаКлиенте
    Процедура Печать(Команда)
    //ПечатьНаСервере().Показать();
    МассивТабличныхДокументов = ПечатьНаСервере();
    Для Каждого ТабличныйДокумент Из МассивТабличныхДокументов Цикл
    Если ТабличныйДокумент <> Неопределено Тогда
    ТабличныйДокумент.Показать();
    КонецЕсли;
    КонецЦикла;
    КонецПроцедуры
```
---
вместо
УправлениеПечатью.МакетПечатнойФормы("ПФ_MXL_Т9")
 сделай просто:
ЭтотОбъект.ПолучитьМакет("ПФ_MXL_Т9")
---
1. Печать должна быть в Модуле объекта.
2. В УФ нужно еще параметры да ВП задать параметры.
А в вообще, погуглили бы просто http://infostart.ru/public/286059/ вот достаточно понятная публикация http://infostart.ru/public/286059/
---
Печать должна быть в Модуле объекта она у ТС и так в модуле объекта:

```1c
    ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
    ОбработкаОбъект.Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);
```
---
я все делал по этой публикации) но там не сказано как запустить отладку именно самой обработки. В данной публикации не описано как прописывать модуль в форме.
---
так а что у Вас по кнопке на форме Вашей обработки Печать ничего не происходит? или в чем затык-то?
---
ноль реакции) нажимаю печать и просто ничего не происходит.
---
```1c
    КоллекцияПечатныхФорм = УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм("ПФ_MXL_Т90");
```

имя макета задаете "ПФ_MXL_Т90" а в Нужно Печатать имя другое суете:

```1c
    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПриказНаСлужебнуюПоездку") Тогда
```

как то определитесь
---
+ к (11) а сам макет ваще называется "ПФ_MXL_Т9" а не Т90 (ПодготовитьКоллекциюПечатныхФорм("ПФ_MXL_Т90");)

повнимательнее надо быть
---
просто запутался уже, но ваши советы вывели на новую ошибку. теперь он пишет

```1c
    Макет "ПФ_MXL_Т9" не найден. Операция прервана.
```

Возможно, я как-то неверно указываю путь к макету.

Радует, что есть теперь хоть какая-то реакция при нажатии кнопки печать.
---
Макет "ПФ_MXL_Т9" не найден в каком месте кода ругается? (что за привычка кусок ошибки выкладывать, который ниачом вапшче)
---
я открываю свою обработку через файл-открыть. выбираю документ, и нажимаю кнопку печать:

Появляется ошибка:
---
Создайте с помощью http://infostart.ru/public/535969/ и отлаживайте через файл - открыть)))
---
Посмотрите в папке пользователя Windows где-то хранится эта внешняя обработка при запуске 1С (погуглите кэш 1С). Во время отладки открываете этот айл в конфигураторе и вот оно счастье.
---
сейчас поищу. читал что где-то должен быть временный файл этой обработки. но просто хотел понять где я ошибся чтобы в ближайшее время так не ошибиться.
---
Именно про него и говорю. Он в кэше 1С на диске С в папке C:\Documents and Settings\username\Application Data\1C\1Cv82\. Там посмотрите.
---
поставьте везде "ПФ_MXL_Т9" и в ПодготовитьКоллекциюПечатныхФорм("ПФ_MXL_Т9") и в НужноПечататьМакет(КоллекцияПечатныхФорм, "ПФ_MXL_Т9")
---
и в УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
            КоллекцияПечатныхФорм,
            "ПФ_MXL_Т9",
---
Поменял, результат такой-же как на скрине выше.
---
не верю, выкладывай измененную обработку
---
Чтобы отлаживать внешние печатные формы всегда использую еще одну маленькую обработку (заглушку для отладки), которую подключаю вместо печатной формы, а уже из нее вызываю внешнюю печатную форму. В этой заглушке есть функция Печать() вызывающая нашу внешнюю печатную форму.
---
да ТС в своей внешней обработке добавил в форме ссылку и кнопку, у него и так все должно работать в отладке
---
кстати открываешь через Файл - Открыть?
---
да, через файл открыть. если подключить через доп отчеты и обработки то там уже другая ошибка. Файл прикрепляю.
---
вместо
УправлениеПечатью.МакетПечатнойФормы("ПФ_MXL_Т9")
 сделай просто:
ЭтотОбъект.ПолучитьМакет("ПФ_MXL_Т9")
---
Супер, я правильно понял что вы реализовали так, чтобы макет брался из самой обработки? а до этого он брался из другого места.
---
а до этого он брался из другого места.
а до этого (если посмотреть код функции УправлениеПечатью.МакетПечатнойФормы) 1С не знала что Вы от нее хотите и валилась с ошибкой
---
спасибо огромное.