|
При запуске печатной формы из 1С Предприятия может потребоваться интерактивный выбор каких либо настроек для продолжения печати. Для решения этой задачи необходимо в печатную форму внедрить механизм вывода формы настроек, на которой будут расположены определенные настройки. В типовых конфигурациях, в управляемом приложении печатные формы программируются и подключаются по другому, чем в обычном приложении.
Внешняя печатная форма в управляемом приложении — это обработка, которая содержит в модуле обработки или в основной форме экспортную функцию Печать() и в модуле обработки экспортную функцию СведенияОВнешнейОбработке(). Базовый пример того как сделать внешнюю печатную форму для управляемого приложения. В базовую печатную форму необходимо внести ряд изменений, для того чтобы перед формированием выводилась дополнительная форма настроек.
Обработка содержит две формы: ФормаТестов, ФормаНастроек.
В функции СведенияОВнешнейОбработке() для свойства «Использование» нужно установить значение «ВызовКлиентскогоМетода». Это означает, что при запуске печатной формы из 1С Предприятия, будет автоматически запускаться экспортная функция Печать() ИЗ ОСНОВНОЙ ФОРМЫ ОБРАБОТКИ, при этом форма не открывается.
Так как в свойствах команды было указано «ВызовКлиентскогоМетода», то экспортная функция Печать(), должна быть расположена в модуле основной формы обработки (в данном случае ФормаТестов), сама форма открыта не будет. Но для отладки, печатная форма будет запускаться через главное меню Файл->Открыть. Поэтому предусмотрим на форме тестов команду для вызова экспортной функции Печать().
На форме настроек расположим несколько полей ввода. Зададим обработчик действия для кнопки «ПродолжитьПечать».
Еще нужно добавить 2 параметра формы: ИдентификаторКоманды, МассивОбъектов, которые передаются при открытии формы. Эти параметры должны быть с признаком Ключевой параметр.
В модуле объекта обработки, разместим экспортную функцию печать, которая занимается формированием табличного документа.
| 1. Владислав 13.09.2018 11:14 |
<ВнешняяОбработка.ВнешняяОбработка1.Форма.ФормаНастроек.Форма(17)>: Поле объекта не обнаружено (ИдентификаторКоманды) КоллекцияПечатныхФорм = УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм(Параметры.ИдентификаторКоманды);
Подскажите, в чем ошибка? |
| 2. Admin 04.10.2018 10:20 |
| Возможно в форме настроек не добавлен параметр ИдентификаторКоманды типа «строка» с признаком Ключевой параметр. |
Для того чтобы добавить сообщение, необходимо Войти или Зарегистрироваться
|