В процессе работы с унаследованными базами данных часто возникают ситуации, когда необходимо внести изменения в печатные формы, но исходный код или сама обработка недоступны в обычном списке дополнительных отчетов. Рассмотрим пошагово, как обнаружить такие объекты в современных типовых конфигурациях и извлечь их для дальнейшей модификации.
В типовых конфигурациях, построенных на базе Библиотеки стандартных подсистем (БСП), управление всеми дополнительными печатными формами осуществляется через централизованный механизм. Если вы не видите обработку в разделе «Дополнительные отчеты и обработки», это не означает, что её нет в системе. Выполним следующие действия:
НСИ и администрирование.Печатные формы, отчеты и обработки.Дополнительные отчеты и обработки (или Печатные формы, в зависимости от версии конфигурации).Заказ клиента). Система отображает все подключенные к данному документу внешние печатные формы, даже если они не выведены в раздел «Дополнительные отчеты».После того как вы нашли нужную запись в списке, необходимо получить физический файл внешней обработки .epf для анализа кода в Конфигураторе. Для этого:
Выгрузить в файл.Файл -> Открыть в режиме Конфигуратор.Теперь перед вами полноценный исходный код обработки. Вы сможете изучить Модуль объекта, где реализована процедура Печать, и проанализировать макеты, которые используются для вывода данных.
Разберем, как именно происходит заполнение данных, если макет представляет собой документ Microsoft Word. Обычно процесс выглядит как создание объекта COM-соединения. При анализе кода в модуле объекта ищите подобные конструкции:
// Пример инициализации COM-объекта для работы с Word
WordApp = Новый COMОбъект(\"Word.Application\");
WordDoc = WordApp.Documents.Open(ИмяФайлаШаблона);
// Заполнение параметров (Bookmarks)
WordApp.ActiveDocument.Bookmarks(\"ДатаЗаказа\").Range.Text = Формат(Объект.Дата, \"ДЛФ=Д\");
WordApp.Visible = Истина;
Если вы видите подобные строки, значит, программа использует технологию OLE/COM-автоматизации. Обратите внимание, что для работы этого метода на сервере или клиентской машине должен быть установлен пакет Microsoft Office.
Поскольку ваша цель — подготовить систему к обновлению, важно придерживаться правил работы с внешними объектами:
Табличный документ 1С. Это значительно повысит скорость работы, не будет требовать установленного Word на сервере и упростит поддержку системы в будущем.СведенияОВнешнейОбработке(), чтобы ваша новая обработка корректно регистрировалась в справочнике ДополнительныеОтчетыИОбработки и автоматически подключалась к документу «Заказ клиента» через массив команд.Таким образом, использование штатного механизма регистрации внешних печатных форм является единственно верным архитектурным решением, которое обеспечивает долговечность и удобство сопровождения системы в условиях постоянных обновлений конфигурации.