При работе в конфигурации «Управление торговым предприятием для Украины» (УТП) пользователи часто сталкиваются с тем, что стандартные средства не позволяют просто загрузить картинку в справочнике организации, чтобы она автоматически появилась на бланках. В отличие от современных конфигураций на управляемых формах (таких как Бухгалтерия 3.0), архитектура УТП базируется на «обычных формах», что требует более технического подхода к брендированию документов.
В этой статье мы подробно разберем, как интегрировать логотип вашей компании в печатные формы документов, проанализируем различные способы реализации и выясним, какой из них наиболее безопасен для стабильной работы системы.
Рассмотрим самый быстрый, но требующий осторожности метод — редактирование типового макета документа непосредственно в конфигурации. Этот способ подойдет вам, если база снята с поддержки или вы готовы вручную объединять изменения при обновлениях.
Для начала разберем алгоритм действий:
РеализацияТоваровУслуг или СчетНаОплатуПокупателю.Печать или Накладная. Откроем его двойным щелчком..bmp или .jpg на белом фоне, так как старые версии платформы могут некорректно обрабатывать прозрачность в .png.После вставки картинки проанализируем её свойства. Нажмем правой кнопкой мыши на изображение и выберем Свойства. В пункте Размер картинки установим значение Пропорционально, чтобы логотип не искажался при изменении границ ячеек. В свойстве Размещение крайне желательно выбрать Переносить вместе со строками, чтобы при печати многостраничных документов логотип не «уплывал».
Теперь разберем более профессиональный и безопасный метод — создание внешней печатной формы (ВПФ). Этот способ хорош тем, что мы не вносим изменения в саму конфигурацию, а значит, проблем с обновлением программы не возникнет.
Процесс создания ВПФ в УТП выглядит следующим образом:
Печать().Посмотрим на пример упрощенного кода в модуле внешней обработки, который инициализирует печать:
Функция Печать() Экспорт
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_Накладная";
Макет = ПолучитьМакет("Накладная");
// Здесь происходит заполнение областей макета данными из документа
// Вывод области шапки, где уже размещен наш логотип
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ТабДокумент.Вывести(ОбластьШапка);
Возврат ТабДокумент;
КонецФункции
После создания файла .epf его нужно зарегистрировать в базе. Перейдем в меню Сервис — Дополнительные отчеты и обработки — Дополнительные внешние печатные формы. Создадим новую запись, выберем наш файл и укажем документ, к которому эта форма относится. Теперь при нажатии кнопки «Печать» в документе вы сможете выбрать вашу новую форму с логотипом.
Выясним причину, по которой иногда недостаточно просто «вклеить» картинку в макет. Бывают случаи, когда у одной компании несколько филиалов или брендов, и для каждого нужен свой логотип. В такой ситуации мы воспользуемся программным созданием объекта РисунокТабличногоДокумента.
Предположим, у нас логотип хранится в справочнике Организации в виде присоединенного файла (или мы программно подтягиваем его по пути к файлу). Рассмотрим пример кода, который динамически вставляет изображение в готовую печатную форму:
// Предположим, ТабДокумент уже сформирован
Рисунок = ТабДокумент.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Рисунок.Верх = 2; // Координаты в миллиметрах
Рисунок.Лево = 2;
Рисунок.Ширина = 50;
Рисунок.Высота = 25;
Рисунок.Картинка = Новый Картинка("C:\Logos\MyLogo.jpg");
Рисунок.ГраницаСверху = Ложь;
Рисунок.ГраницаСлева = Ложь;
Рисунок.ГраницаСправа = Ложь;
Рисунок.ГраницаСнизу = Ложь;
Рисунок.РазмерКартинки = РазмерКартинки.Пропорционально;
Этот метод позволяет гибко управлять брендированием без создания десятков разных макетов. Мы можем прописать условие в коде: если Организация = "Бренд А", то загружаем один файл, если "Бренд Б" — другой.
При работе с графикой в 1С 8.3 на обычных формах следует помнить о нескольких критических моментах:
BMP или JPG с высоким качеством. PNG может выдавать «черный фон» вместо прозрачности при печати через некоторые PDF-принтеры или старые драйверы HP.Подводя итог, отметим: если вы новичок, самым простым и правильным путем будет использование внешней печатной формы. Это сохранит чистоту конфигурации и позволит вам экспериментировать с дизайном макета, не опасаясь повредить основные функции системы.