В УТ 11.5 фирма 1С до сих пор не смогла полностью реализовать функционал печати этикеток на термопринтерах с помощью БПО, хотя тот же функционал в Рознице вполне себе рабочий. Поэтому я решил написать расширение конфигурации, которое добавляет в БПО все недостающие функции и еще немного кода, исправляющего работу той части БПО, которая уже есть в УТ.
Чтобы понять разницу в подходах стандартной печати этикеток и ценников и печати через БПО, необходимо описать всю цепочку, начиная с формирования этикетки и до печати её термопринтером.
1й вариант. Стандартная обработка печати.
- генерируются картинки штрихкодов и марок честного знака через функцию "ГенерацияШтрихкода.ИзображениеШтрихкода(ПараметрыШтрихкода)"
- полученные картинки вставляются в табличный документ с искажениями, т.к. линейные размеры поля в табличном документе и самой картинки редко совпадают
- табличный документ отправляется в win-драйвер принтера в виде RAW - на этом этапе опять искажаются все картинки и еще портится текст
- драйвер принтера перекодирует всё, что получил в отдельные картинки, и этот набор картинок вперемешку с управляющими командами отправляет в принтер
- принтер переводит все картинки в формат bitmap (не bmp) и уже то, что получилось, выводит на печать
Качество исходных изображений и текста сильно страдает от многократных преобразований и искажений. Почему в 1С поступили именно так? Да просто так проще - мы формируем табличный документ и кидаем его в win-принтер, а он там пусть сам разбирается, как ему эту мешанину печатать. В итоге термопринтер печатает медленно и качество сильно падает. Настолько, что марка честного знака меньше чем 20х20 мм, напечатанная на термопринтере 203dpi практически не читается большинством сканеров. Нужно покупать 300dpi термотрансферный принтер или жечь марку лазером.
2й вариант. Печать через БПО.
- генерируются картинки только марок честного знака через функцию "ГенерацияШтрихкода.ИзображениеШтрихкода(ПараметрыШтрихкода)", а линейные штрихкоды отправляются в текстовом виде
- полученные картинки и текстовые поля отправляются в драйвер БПО
- драйвер БПО формирует bitmap'ы для всех полей и отправляет их вместе с управляющими командами напрямую в принтер
Что получим от перехода на печать через БПО? Качество линейных штрихкодов и текста практически идеальное и зависит только от качества алгоритмов преобразования текста и штрихкодов в графический формат, заложенных в драйвере БПО. Картинка марки честного знака один раз преобразовывается (тут без этого никак, т.к. в большинстве своём и принтеры ничего про GS1-DataMatrix не знают), её можно напечатать 15х15 мм или даже 12х12 мм на обычном термопринтере 203dpi и она будет читаться любым сканером штрихкода.
Плюсы печати этикеток через БПО
- Драйвер термопринтера всегда с вами - он зашит в конфигурацию
- Все драйверы БПО обязаны подчинятся требованиям 1С изложенным в описании БПО. Никакой отсебятины, вы точно знаете что драйверы от разных производителей должны обеспечивать вам одинаковый функционал
- Печать выполняется быстрее чем через win-драйвер т.к. в принтер передаются более "лёгкие" данные а не картинки этикеток целиком
- Не нужно постоянно "крутить" настройки принтеров под разные этикетки - драйвер БПО сам передаст все нужные параметры принтеру
- Меньше искажений графики, штрихкодов, марок честного знака и даже обычного текста т.к. многие поля передаются в драйвер в текстовом виде и он уже готовит bitmap'ы для принтера - одно преобразование вместо множества перекодирований как в случае win-драйверов
Минусы печати этикеток через БПО
- Нет предпросмотра, т.к. нет табличного документа. Тут вся ответственность на 1С - они решили, что в БПО это никому не нужно. Возможно, это и правильно - один раз настроив шаблон этикетки, какой смысл на него постоянно смотреть и нажимать лишние кнопки.
- Шаблоны этикеток от стандартной обработки не подходят - придётся их создавать заново.
Комплект состоит из
- Расширение конфигурации
- Инструкция администратора - описание, установка, настройка, редактор шаблонов, изменения
- Инструкция пользователя - как пользоваться обработкой печати этикеток
- Обновлённый драйвер для термопринтеров АТОЛ от Раруса
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.22.180, 11.5.22.170, 11.5.22.164
Вступайте в нашу телеграмм-группу Инфостарт