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