Как я ковырял внешнюю печатную форму для БП3
fixin — 16.08.2016печатные формы в БП3 - это нечто страшное.
Довелось мне заниматься рефакторингом одной печатной формы. Она печаталась через вызов клиентского метода формы.
Там запрашивался вариант формирования формы - с печатью или без и после этого выводилась на экран форма.
Но клиент захотел оправлять эту форму по почте, а отправка по почте ищет серверный метод у внешней обработки.
Я перенес весь код в модуль обработки, но возник вопрос - как можно на сервере выбрать - с печатью или без?
Ковырялся полчаса, потом нашел в процедуре сведений об обработке, что можно указывать список команд - обидно, все ведь перед глазами было. Добавил две команды - одну с печатью, другую без.
Печататься начало хорошо. Но по кнопке "Отправить по e-mail" не отправлялось. Начал смотреть, почему. Не могу понять. Поотлаживал, как отправляется типовая форма реализации, докопался, что 1С ищет область с готовом печатном документе, соответствующую пресдставлению объекта, который был распечатан. И только если находит, только тогда отправляет.
Пришлось всей печатной области присваивать имя "Документ_1".
Потом еще поковырялся чуть-чуть, чтобы найти, как сделать, чтобы вложение называлось не "Табличный документ № ... от ...", а "Акт документ № ... от ...", оказывается за это отвечает колонка "Синоним макета" в таблице печатных форм.
В общем, через групповую печать не работает, но клиент и так отправляет каждый акт отдельно, уточнил, что этого достаточно. А то бы пришлось еще полчаса убить на групповую печать.
Итого затрат - полтора часа, выставленных клиенту.
Скажите, ну кто так документирует? Кто так пишет? Это же в БСП такая хитроумная система печати, блин. Большой "теплый" привет методистам 1С!