Как запросить данные у юзера перед печатью
Добрый день !
Подскажите как правильно запросить данные у юзера перед печатью ?!
в МодульМенеджера Документа я добавляю "свой пункт меню" для печати
Мне необходимо после того как юзер выберет этот пункт меню: запросить у него "Подпись"
Вопрос: где мне надо это сделать ?
Потому как в МодульМенеджера документа пишет ошибку
Процедура или функция с указанным именем не определена "ВвестиЗначение" (Проверка: Сервер)
Подскажите как правильно запросить данные у юзера перед печатью ?!
в МодульМенеджера Документа я добавляю "свой пункт меню" для печати
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
// В.Ч. Счет-фактура с выбранной подписью
КомандаПечати = КомандыПечати.Добавить();
КомандаПечати.МенеджерПечати = "Обработка.ПечатьОбщихФорм";
КомандаПечати.Идентификатор = "СчетФактура";
КомандаПечати.Представление = НСтр("ru = 'Счет-фактура с выбранной подписью';
|en = 'Tax invoice'");
КомандаПечати.ПроверкаПроведенияПередПечатью = Истина;
КомандаПечати.ДополнительныеПараметры.Вставить("ПечатьВВалюте", Ложь);
КомандаПечати.ДополнительныеПараметры.Вставить("вчСВыбраннойПодписью", Истина); // <-------------------------
КомандаПечати.Порядок = 2;
// В.Ч. Счет-фактура с выбранной подписью -------------------------------------------------------------------
ПоказатьМне необходимо после того как юзер выберет этот пункт меню: запросить у него "Подпись"
вчПараметрыПечати = Новый Структура; // В.Ч. запрашиваем значение вчВыбраннаяПодпись
Если ПараметрыПечати.Свойство("вчСВыбраннойПодписью") Тогда
вчВыбраннаяПодпись = Справочники.ОтветственныеЛицаОрганизаций.ПустаяСсылка();
Если ВвестиЗначение(вчВыбраннаяПодпись,"Выберите подпись ответственного лица") Тогда
вчПараметрыПечати.Вставить("вчВыбраннаяПодпись", вчВыбраннаяПодпись);
КонецЕсли;
КонецЕсли;
Вопрос: где мне надо это сделать ?
Потому как в МодульМенеджера документа пишет ошибку
Процедура или функция с указанным именем не определена "ВвестиЗначение" (Проверка: Сервер)
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5)
Судя по вопросу в (0)
Человек ещё не "врубился" в разделение клиент/сервер - на что я и обратил его внимание...
А конкретного совета не даю, т.к. он зависит от многих входящих условий... как методологических, так и технологических...
но Капитан Очевидность более уместен)
Судя по вопросу в (0)
Потому как в МодульМенеджера документа пишет ошибку
Процедура или функция с указанным именем не определена "ВвестиЗначение" (Проверка: Сервер)
Процедура или функция с указанным именем не определена "ВвестиЗначение" (Проверка: Сервер)
Человек ещё не "врубился" в разделение клиент/сервер - на что я и обратил его внимание...
А конкретного совета не даю, т.к. он зависит от многих входящих условий... как методологических, так и технологических...
Использовать клиентский обработчик печати...
Если НЕ готовы отредактировать типовую - добавить форму для внешней печатной формы и в модуле формы расположить клиентскую экспортную процедуру с именем обработчика, в которой вы вольны работать с интерактивными инструментами. А потом Если готовы отредактировать типовую - добавьте в модуль основной формы обработки ПечатьОбщихФорм свой экспортный клиентский метод. А потом
Подробнее - в документации по БСП.
Но учтите, что такие печатные формы нельзя использовать для печати комплектов... Вроде бы.
Если НЕ готовы отредактировать типовую - добавить форму для внешней печатной формы и в модуле формы расположить клиентскую экспортную процедуру с именем обработчика, в которой вы вольны работать с интерактивными инструментами. А потом
КомандаПечати.МенеджерПечати = "ВнешняяОбработка.ИмяМоейОбработки";
КомандаПечати.Обработчик = "МойОбработчик";
КомандаПечати.МенеджерПечати = "Обработка.ПечатьОбщихФорм";
КомандаПечати.Обработчик = "МойОбработчик";
Подробнее - в документации по БСП.
Но учтите, что такие печатные формы нельзя использовать для печати комплектов... Вроде бы.
Принцип печати в БСП следующий: по кнопке формируется структура параметров для печати, типа какую кнопку нажал, какой макет, какой обработчик печати и пр. Затем есть общая форма "Печать документов", в нее передается структура параметров. "При создании на сервере" вызывается процедура СформироватьПечатныеФормы(ИменаМакетов, Отказ). Проблема в том что все это серверная часть и вклинить вывод диалога проблематично.
Можно проверить какой макет печатается и тогда притормозить процедуру "При создании на сервере", В процедуре "При открытии" (на клиенте) отработать выбор и потом уже отрабатывать СформироватьПечатныеФормы.
Я делал по другому - в печатной форме оставлял место под скан подписи. процедуру печати "При создании на сервере" отрабатывал стандартно, При открытии проверял что за макет и если надо запрашивал подпись и вставлял ее уже в готовый выведенный на форме табдок.
Можно проверить какой макет печатается и тогда притормозить процедуру "При создании на сервере", В процедуре "При открытии" (на клиенте) отработать выбор и потом уже отрабатывать СформироватьПечатныеФормы.
Я делал по другому - в печатной форме оставлял место под скан подписи. процедуру печати "При создании на сервере" отрабатывал стандартно, При открытии проверял что за макет и если надо запрашивал подпись и вставлял ее уже в готовый выведенный на форме табдок.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот