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