Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
03 дек 2022, 16:53

Добавление внешней печатной формы.

Автор Евгений Павлович, 13 июл 2022, 15:41

0 Пользователей и 1 гость просматривают эту тему.

Евгений Павлович

Управление торговлей, редакция 11.1
Делаю внешнюю печатную форму для документа "бит_ФормированиеРейса". Только вот при подключении печатки она не видит документ, и после, когда пытаюсь руками выбрать документ, то он не отображается в списке.
Может кто сталкивался с данным вопросом. Что нужно сделать, чтобы печатная форма подключилась именно к этому документу?
С остальными все в порядке.

alexandr_ll

Евгений Павлович, в Управление торговлей, редакция 11.1 такого документа нет.

Евгений Павлович

Да, я знаю, этот документ не типовой. Возможно в самом документе нужно что-то сделать? Спасибо.

wise

(2) да, нужно.

https://capitally.ru/1c-development/kak-dobavit-vneshnyuyu-pechatnuyu-formu-k-netipovomu-dokumentu-1s-8-3/

Как добавить внешнюю печатную форму к нетиповому документу 1С 8.3

Если вы добавили свой документ в конфигурацию, то для того чтобы добавить внешнюю печатную форму к документу следует:

  1. Добавить новый Объект в УправлениеПечатьюПереопределяемый.ПриОпределенииОбъектовСКомандамиПечати

Через расширение код будет такой:

&После("ПриОпределенииОбъектовСКомандамиПечати")
Процедура Ас_ПриОпределенииОбъектовСКомандамиПечати(СписокОбъектов)
СписокОбъектов.Добавить(Документы.ДоговорНаВыполнениеРаботСФизЛицом);
КонецПроцедуры

2. Также добавим в модуле формы объектп:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// СтандартныеПодсистемы.ПодключаемыеКоманды
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
// СтандартныеПодсистемы.ПодключаемыеКоманды
ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
КонецПроцедуры

// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
ПодключаемыеКомандыКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда, Объект);
КонецПроцедуры
&НаСервере
Процедура Подключаемый_ВыполнитьКомандуНаСервере(Контекст, Результат)
ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, Контекст, Объект, Результат);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

3. В модуль менеджера объекта добавить пустые функции (вторая использоваться не будет, но при отсутствии будет ошибка)

Заполнять их следует для реализации встроенных форм.

////////////////////////////////////////////////////////////////////////////////
// Интерфейс для работы с подсистемой Печать.
// Заполняет список команд печати.
//
// Параметры:
// КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати
//
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
КонецПроцедуры
// Формирует печатные формы.
//
// Параметры:
// МассивОбъектов - Массив - ссылки на объекты, которые нужно распечатать;
// ПараметрыПечати - Структура - дополнительные настройки печати;
// КоллекцияПечатныхФорм - ТаблицаЗначений - сформированные табличные документы (выходной параметр)
// ОбъектыПечати - СписокЗначений - значение - ссылка на объект;
// представление - имя области в которой был выведен объект (выходной параметр);
// ПараметрыВывода - Структура - дополнительные параметры сформированных табличных документов (выходной параметр).
//
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
КонецПроцедуры

4. при необходимости сделать тоже самое для формы списка документа

5. Добавить внешнюю печатную форму в справочник «Дополнительные отчеты и обработки» и указать размещение команды печати.

В старой БСП вместо первой части следовало добавить тип документа в типы параметров Общей команды «ДополнительныеПечатныеФормыОбъекта», сейчас все с одной стороны дольше, универсальней, но те так прозрачно.

О рекламе можно сказать, что это наука затемнять рассудок человека до тех пор, пока ты не получишь от него деньги.

Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

Евгений Павлович

Огромное человеческое СПАСИБО ВАМ!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru Rambler's Top100

Поиск