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