Формирование внешней печатной формы из типовой для конфигураций на управляемых формах (БП 3.0, УТ 11, КА 2, ERP и пр.)

Периодически приходится немного (а иногда и много) менять типовые печатные формы. Обычно в таком случае создаётся внешняя печатная форма, в неё переносятся из модуля менеджера документа (или обработки, если форма формируется обработкой) процедуры для формирования этой формы, после чего вносятся необходимые изменения. Основная проблема при этом — скопировать все функции, необходимые для формирования печатной формы. Приходится просматривать код, чтобы понять какие именно функции нужны. Или просто действовать методом тыка — пытаться сформировать форму, смотреть на отсутствие каких функций «ругается» и переносить их. Однажды мне это надоело, в результате чего появилась данная обработка.

Описание работы с обработкой.

  1. В конфигураторе открыть модуль менеджера документа, печатную форму которого мы хотим поместить во внешнюю (или модуль менеджера обработки, если формирование производится из обработки, например, "ПечатьОбщихФорм").
  2. Скопировать полностью текст модуля в буфер обмена (Ctrl+A, Ctrl+C).
  3. Открыть обработку в режиме 1С:Предприятия.
  4. В поле "Документ" выбрать нужный документ.
  5. В текстовое поле "Модуль менеджера документа" вставить из буфера обмена скопированный ранее текст (Ctrl+V).
  6. Нажать кнопку "Распознать текст модуля менеджера документа".
  7. Выбрать в поле выпадающего списка "Печатная форма" необходимую форму.
  8. Заполнить раздел "Сведения о печатной форме".
  9. Нажать кнопку "Сформировать текст модуля обработки".
  10. В текстовом поле "Модуль обработки" будет сформирован текст. В конфигураторе необходимо создать новую внешнюю обработку и вставить сгененированный текст в модуль обработки. В большинстве случаев обработка сразу становится работоспособной (почему в большинстве см. ниже).

Таким образом, буквально за пару минут можно перенести типовую печатную форму во внешнюю обработку. После чего её можно доработать и использовать.

Примечание. Иногда текст может формироваться не совсем корректно и при формировании печатной формы возникают ошибки. В таком случае приходится дополнительно редактировать полученный текст вручную. Также есть проблема, если в наименовании печатной формы есть запятые — нужно улучшать парсинг модулей. Пока оставлено как есть. Из-за нехватки времени мне быстрее откорректировать вручную, чем разбираться, почему так происходит и вносить исправления в обработку. Так что будьте готовы, что в некоторых случаях может сразу и не "взлететь". Может, когда то и доведу до ума. В любом случае, данная обработку уже сэкономила мне много времени и я подумал, что, возможно, кому-то ещё она пригодится. Исходный код обработки открыт. Вы можете использовать её в любых своих целях без каких-либо ограничений.

Пример заполнения обработки можно посмотреть на скриншоте ниже.

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *