Печать штрих этикеток на EPL2 для УТ11

Печатаем этикетки прямо на сетевой принтер из УТ11, используя EPL2. Работет очень быстро. Не требует установки каких-либо дополнительных программ/компонент, за исключением драйверов принтера на компьютере к которому он непосредственно подключен.

Обработка позволяет легко печатать прямо на принтер, поддерживающий EPL2 (работает на TSC TDP 225). На принтер (как в папку) просто посылается соответствующим образом сформированный файл, все остальное принтер делает сам. В текущей реализации обработки настроен только один размер этикеток (25 х 45), но его легко расширить.

Обработка 

Настраивается указанием пути к принтеру и заданием размера этикетки.

Если же необходимый размер этикетки отличается от представленного, то достаточно в режиме конфигурирования внести новое значение в списке размеров, и добавить новую карту этикетки в функции СоздатьЭтикетку модуля формы:

Редактирование

Для этого, возможно, потребуется ознакомится со спецификацией «языка» EPL2 (http://www.istandart.ru/download/Printers/Zebra/epl2.pdf, или http://www.spritvest.com.my/downloads/PDF/EPL2_Manual.pdf в оригинале)

По текущей карте этикетка получается такой (скан):

Этикета 25 х 45

Здесь: размер 25 на 45 мм, 4 строки кирилического текста по 23 символа, с предпочтительным разрывом по пробелу, и штрихкод EAN13 среднего размера. 

17 Comments

  1. roha

    на USB принтер можно будет выводить EPL2 данные ?

    Reply ↓
  2. mxm2

    (1) roha, сильно зависит от модели принтера, кроме того нужно чтобы его можно было подцепить как сетевой, т.к. технология заключается в том что на принтер как в файл посылается соответствующим образом сформированная информация.

    Reply ↓
  3. roha

    (2) Принтер нам дала фирма DHL а файлы EPL2/ZPL2 я формирую через ихнее API, но вот отправить их на принтер не получается. Как сетевой принтер подключить можно. Подскажи кусок кода отправки на принтер.

    Спасибо

    Reply ↓
  4. mxm2

    (3) roha, из командной строки что-то типа: copy file.erl \ServerPrinter

    Reply ↓
  5. roha

    пробовал данный метод — не хочет печатать у меня

    Спасибо

    Reply ↓
  6. mxm2

    (5) roha, попробуете ключи /a и /b у команды copy, кстати ServerPrinter — должны быть Ваши имена, например \Ser01USB02

    Reply ↓
  7. roha

    (6) Попробую с ключами.

    Reply ↓
  8. maestro_voln

    получилось?

    Reply ↓
  9. etmarket

    (8) maestro_voln, врядли. Попробовал для своего Zebra s4m через командную строку отправить файл с командами EPL. Пишет, что файл скопирован на сетевой принтер, но сам принтер ничего не печатает.

    Reply ↓
  10. etmarket

    Спасибо за обработку! Всё работает) Я в восторге)))

    Очень понравилось, что не нужно подключать дополнительных компонент и печатает без перерывов между этикетками.

    Кстати, сперва появилась ошибка: «локальный документ низкого уровня — ошибка печати». Решается проблема снятием галочки «Разрешить двусторонний обмен» в свойствах принтера, вкладка «Порты».

    Reply ↓
  11. mxm2

    (10) etmarket, укажите приз, для статистики модель принтера.

    Reply ↓
  12. etmarket

    (11) термотрансферный принтер Zebra S4M

    Reply ↓
  13. konfed

    Спасибо за подсказку . Zebra 420t тоже так умеет, только желательно установленный принтер с именем ZDesigner GK420t переименовать во что-то покороче и без пробелов , напр. GK420t

    Reply ↓
  14. isstorm

    Добрый день! Подскажите, из-за чего может быть ошибка

    {Форма.Форма.Форма(101)}: Ошибка при вызове метода контекста (Записать)

    Файл.Записать(Объект.ИмяСетевогоПринтера + «» + ИмяФайла + «.txt», «windows-1251»);

    по причине:

    Неправильный путь к файлу ‘\192.168.1.145TSC TTP-2410M54348.txt’

    При этом задержка на отправке происходит, затем вот такая ошибка. Может порт еще надо указать? или имя сетевое неверно написано?

    Reply ↓
  15. mxm2

    (14) isstorm, путь к принтеру не должен содержать пробелов или в коде обработки добавьте двойные ковычки

    Reply ↓
  16. Crueger

    Здравствуйте!

    Платформа 8.3.9.2033

    Конфигурация УТ 11.3.2.193

    в номенклатуре не используются упаковки, единица хранения штуки.

    Ошибка:

    {ВнешняяОбработка.ПечатьШКTSCTDP225.Форма.Форма.Форма(284)}: Ошибка при вызове метода контекста (Выполнить)

    Выборка = Запрос.Выполнить().Выбрать();

    по причине:

    {(8, 51)}: Неверные параметры «Справочник.УпаковкиНоменклатуры.ПустаяСсылка»

    КОГДА ШтрихкодыНоменклатуры.Упаковка = ЗНАЧЕНИЕ(<<?>>Справочник.УпаковкиНоменклатуры.ПустаяСсылка)

    Reply ↓
  17. Crueger

    разобрался. везде надо заменить Справочник.УпаковкиНоменклатуры.ПустаяСсылка на Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)

    Reply ↓

Leave a Comment

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