Первое с чего необходимо начать - для запускаемой команды указать вариант запуска внешней обработки "ОткрытиеФормы".
Все, это практически половина дела, теперь добавляем саму форму, в форме должно быть обязательно 3 реквизита и 3 параметра (параметры не обязательно):
ДополнительнаяОбработкаСсылка ИдентификаторКоманды ОбъектыНазначения
Данные реквизиты необходимо инициализировать в процедуре: "ПриСозданииНаСервере"
Примерно так:
ДополнительнаяОбработкаСсылка = Параметры.ДополнительнаяОбработкаСсылка; ИдентификаторКоманды = Параметры.ИдентификаторКоманды; ОбъектыНазначения.ЗагрузитьЗначения(Параметры.ОбъектыНазначения);Выносить эти реквизиты на форму не обязательно и даже не желательно, чтобы пользователи их не попортили, они условно "Системные".
А вот на форму необходимо добавить и вынести все остальные необходимые вам реквизиты (параметры печати).
Добавляем на форму команду печать с следующим обработчиком:
ДополнительныеПараметрыПечати = Новый Структура; ДополнительныеПараметрыПечати.Вставить("Получил",Получил); ОбъектыНазначенияПараметр = Новый Структура; ОбъектыНазначенияПараметр.Вставить("ОбъектыНазначения",ОбъектыНазначения.ВыгрузитьЗначения()); ОбъектыНазначенияПараметр.Вставить("ДополнительныеПараметрыПечати",ДополнительныеПараметрыПечати); ПараметрыИсточника = Новый Структура; ПараметрыИсточника.Вставить("ИдентификаторКоманды", ИдентификаторКоманды); ПараметрыИсточника.Вставить("ОбъектыНазначения", ОбъектыНазначенияПараметр); ПараметрыИсточника.Вставить("БезопасныйРежим", Ложь); ПараметрыОткрытия = Новый Структура("ИсточникДанных,ПараметрыИсточника"); ПараметрыОткрытия.ИсточникДанных = ДополнительнаяОбработкаСсылка; ПараметрыОткрытия.ПараметрыИсточника = ПараметрыИсточника; Если УправлениеПечатьюКлиент.ПроверитьДокументыПроведены(ОбъектыНазначения.ВыгрузитьЗначения()) Тогда ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия); Иначе Отказ = Истина; КонецЕсли;Код вызова общей формы "ПечатьДокументов" возможно зависит от версии БСП, но в моем случае он выглядел именно так. Подсмотреть его можно в общем модуле "ДополнительныеОтчетыИОбработкиКлиент" процедура "ВыполнитьСерверныйМетодОбработки".
Как видно из текста команды, вместо параметра "ОбъектыНазначения" мы подсовываем структуру с непосредственно самими объектами и с дополнительными параметрами печати и единственное, что нам остается в нашей процедуре "Печать" разобрать этот параметр обратно на составляющие:
Процедура Печать(МассивОбъектовНазначения, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ИмяМакетаВнешнейФормы") Тогда МассивОбъектов = МассивОбъектовНазначения.ОбъектыНазначения; ДополнительныеПараметрыПечати = МассивОбъектовНазначения.ДополнительныеПараметрыПечати;
Вот и вся хитрость.
Для примера во вложении разместил форму "Приходная накладная" для "УТ 11" с указанием ответственного принявшего товар.