мета-данные страницы
Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
mobile_faq_customezpl [24.10.2022 13:51] FeLDMaRShaL [Проверка созданного шаблона и бирки] |
mobile_faq_customezpl [17.11.2023 13:36] (текущий) FeLDMaRShaL [Настройка кодировки при печати бирки] |
||
---|---|---|---|
Строка 11: | Строка 11: | ||
* На вкладке "Дополнительно", перетаскиваем в поле редактирования бирки элемент “Текст шрифтами принтера”. Переходим на вкладку "Тип шрифта", выбираем "Шрифт TrueType", указываем имя шрифта TA и приступаем к загрузке шрифта в память принтера | * На вкладке "Дополнительно", перетаскиваем в поле редактирования бирки элемент “Текст шрифтами принтера”. Переходим на вкладку "Тип шрифта", выбираем "Шрифт TrueType", указываем имя шрифта TA и приступаем к загрузке шрифта в память принтера | ||
{{:godex5.png?nolink&800|}} | {{:godex5.png?nolink&800|}} | ||
- | * Для использования подходит любой моноширный шрифт, мы рекомендуем использовать шрифт CourierNew. После этого этапа предварительная настройка принтера заканчивается. | + | * Для использования подходит любой моноширинный шрифт, мы рекомендуем использовать шрифт CourierNew. После этого этапа предварительная настройка принтера заканчивается. |
{{:godex6.png?nolink&400|}} | {{:godex6.png?nolink&400|}} | ||
* Продвинутые пользователи могут использовать несколько шрифтов, например, шрифт LiberationMono-Bold - он более "Жирный", и если требуется выделить на бирке элемент можно воспользоваться этим шрифтом. Все используемые шрифты должны иметь разные название, например, второй шрифт лучше назвать TB. | * Продвинутые пользователи могут использовать несколько шрифтов, например, шрифт LiberationMono-Bold - он более "Жирный", и если требуется выделить на бирке элемент можно воспользоваться этим шрифтом. Все используемые шрифты должны иметь разные название, например, второй шрифт лучше назвать TB. | ||
===== Создание будущего шаблона бирки ===== | ===== Создание будущего шаблона бирки ===== | ||
- | * На предыдущем этапе мы настроили все необходимые параметры нашей бирки (используемого принтера, указав тип носителя, наличие автоматического отрезщика и т.п.). Теперь необходимо задать размер бирки и тип используемой бумаги. Для этого на вкладке "Основной" нажимаем кнопку "Новая" и настраиваем "Размер носителя" и "Тип бумаги". В примере мы будем настраивать бирку размером 58*30 без отступов на непрерывной чековой ленте без разрыва. | + | * На предыдущем этапе мы настроили все необходимые параметры нашей бирки (используемого принтера, указав тип носителя, наличие автоматического обрезщика и т.п.). Теперь необходимо задать размер бирки и тип используемой бумаги. Для этого на вкладке "Основной" нажимаем кнопку "Новая" и настраиваем "Размер носителя" и "Тип бумаги". В примере мы будем настраивать бирку размером 58*30 без отступов на непрерывной чековой ленте без разрыва. |
{{:godex7.png?nolink&800|}}\\ | {{:godex7.png?nolink&800|}}\\ | ||
{{:godex8.png?nolink&400|}} | {{:godex8.png?nolink&400|}} | ||
Строка 37: | Строка 37: | ||
===== Создание процедуры по генерации бирки используя заранее подготовленный шаблон ===== | ===== Создание процедуры по генерации бирки используя заранее подготовленный шаблон ===== | ||
- | * Запускаем программу IBExpert и проводим скрипт по созданию/изменению процедуры генерации EZPL шаблона нашей будущей бирки. Входным параметром процедуры всегда будет вн.номер услуги. Запросом необходимо вытащить из базы данных информацию которую мы в будущем планируем отображать на бирке. | + | * Запускаем программу IBExpert и проводим скрипт по созданию/изменению процедуры генерации EZPL шаблона нашей будущей бирки. Входным параметром процедуры всегда будет внутренний номер услуги. Запросом необходимо вытащить из базы данных информацию которую мы в будущем планируем отображать на бирке. |
<code sql> | <code sql> | ||
CREATE OR ALTER procedure SP_GET_CUSTOM_EZPL_LABEL ( | CREATE OR ALTER procedure SP_GET_CUSTOM_EZPL_LABEL ( | ||
Строка 94: | Строка 94: | ||
===== Проверка созданного шаблона и бирки ===== | ===== Проверка созданного шаблона и бирки ===== | ||
- | * В IBExpert открываем таблицу DOC_ORDER_SERVICES, копируем вн.номер услуги и выполняем запрос к базе данных | + | * В IBExpert открываем таблицу DOC_ORDER_SERVICES, копируем внутренний номер услуги и выполняем запрос к базе данных |
<code sql>select * from sp_get_custom_ezpl_label(:dos_id)</code> | <code sql>select * from sp_get_custom_ezpl_label(:dos_id)</code> | ||
* Результат выполнения процедуры вставляем в новую бирку (что бы не затереть по ошибке наш созданный шаблон).Импортируем EZPL команду в визуальную бирку. Производим печать нашей бирки. Если результат устраивает то приступаем к настройке Meta, если результат требует корректировки то возвращаемся к правке EZPL шаблона после чего модифицируем нашу процедуру sp_get_custom_ezpl_label | * Результат выполнения процедуры вставляем в новую бирку (что бы не затереть по ошибке наш созданный шаблон).Импортируем EZPL команду в визуальную бирку. Производим печать нашей бирки. Если результат устраивает то приступаем к настройке Meta, если результат требует корректировки то возвращаемся к правке EZPL шаблона после чего модифицируем нашу процедуру sp_get_custom_ezpl_label | ||
+ | {{:godex20.jpg?nolink&800|}} | ||
+ | |||
+ | ===== Редактирование локальной настройки для модуля Агбис Приёмка===== | ||
+ | * В нужном комплекте локальных настроек изменяем "Тип квитанции" на "Godex EZPL Custom" | ||
+ | {{:godex21.png?nolink&800|}} | ||
+ | |||
+ | =====Настройка кодировки при печати бирки===== | ||
+ | По умолчанию на принтере Godex установлена кодировка **cp1251**. Если требуется начать работать с другой кодировкой, то в процедуру необходимо добавить специальную команду которая выставить значение кодировки: **^XSET,CODEPAGE,14** | ||
+ | Список всех поддерживаемых кодировок | ||
+ | <code sql>0: 'cp850' | ||
+ | 1: 'cp852' | ||
+ | 2: 'cp437' | ||
+ | 3: 'cp860' | ||
+ | 4: 'cp863' | ||
+ | 5: 'cp865' | ||
+ | 6: 'cp867' | ||
+ | 7: 'cp861' | ||
+ | 8: 'cp862' | ||
+ | 9: 'cp855' | ||
+ | 10: 'cp856' | ||
+ | 11: 'cp737' | ||
+ | 12: 'cp851' | ||
+ | 13: 'cp869' | ||
+ | 14: 'cp1252' | ||
+ | 15: 'cp1250' | ||
+ | 16: 'cp1251' | ||
+ | 17: 'cp1253' | ||
+ | 18: 'cp1254' | ||
+ | 19: 'cp1255' | ||
+ | 20: 'cp1257'</code> | ||
+ | |||
+ | Для России должна использоваться кодировка cp1251, а для Германии кодировка cp1252 | ||
+ | |||
+ | ===== Примеры готовых процедур для бирок ===== | ||
+ | * Бирка 1 <code sql>CREATE OR ALTER procedure SP_GET_CUSTOM_EZPL_LABEL ( | ||
+ | DOS_ID D_ID_INT64) | ||
+ | returns ( | ||
+ | EZPL_TEXT D_BLOB) | ||
+ | as | ||
+ | declare variable SCLAD_KREDIT_NAME D_STR_100; | ||
+ | declare variable DATE_BEG D_STR_50; | ||
+ | declare variable DATE_END D_STR_12; | ||
+ | declare variable BARCODE_READ D_STR_25; | ||
+ | declare variable BARCODE D_STR_25; | ||
+ | declare variable DOC_NUM D_STR_50; | ||
+ | declare variable CLIENT_NAME D_STR_100; | ||
+ | declare variable TOVAR_NAME D_STR_500; | ||
+ | begin | ||
+ | |||
+ | /* | ||
+ | Бирка для печати на Godex на бесконечной чековой ленте без отрезщика и без разделителя бирок | ||
+ | Бирка размером 58*30 (ширина ленты 58 мм, высота бирки 30 мм) | ||
+ | На бирке выводится инфомрация: | ||
+ | * Склад приема (1 строка) | ||
+ | * Дата начала обработки/дата конца обработки (2 строка) | ||
+ | * Номер бирки (3 строка) | ||
+ | * ШК бирки (4 строка) | ||
+ | * Имя клиента (5 строка) | ||
+ | * Номер заказа (6 строка) | ||
+ | * Название услуги ( 7 строка) | ||
+ | */ | ||
+ | |||
+ | select | ||
+ | s.name, | ||
+ | lpad(extract(day from d.doc_date), 2, '0') || '.' || lpad(extract(month from d.doc_date), 2, '0'), | ||
+ | lpad(extract(day from dor.date_out), 2, '0') || '.' || lpad(extract(month from dor.date_out), 2, '0'), | ||
+ | dos.barcode_read, | ||
+ | dos.barcode, | ||
+ | c.name, | ||
+ | d.doc_num, | ||
+ | tt.name as tovar_name | ||
+ | from doc_order_services dos | ||
+ | left join docs_order dor on dor.id = dos.doc_order_id | ||
+ | left join docs d on d.doc_id = dor.doc_id | ||
+ | left join tovars_tbl tt on tt.TOVAR_ID = dos.tovar_id | ||
+ | left join contragents c on c.contr_id = d.contragent_id | ||
+ | left join sclads s on s.id = dor.sclad_kredit_id | ||
+ | where dos.id = :dos_id | ||
+ | into :sclad_kredit_name, :date_beg, :date_end, :barcode_read, :barcode, :client_name, :doc_num, :tovar_name; | ||
+ | |||
+ | select res from sp_ezpl_print_string(:sclad_kredit_name, 27, 1) into :sclad_kredit_name; | ||
+ | select res from sp_ezpl_print_string(:date_beg||' '||:date_end, 22, 1) into :date_beg; | ||
+ | select res from sp_ezpl_print_string(:barcode_read, 14, 1) into :barcode_read; | ||
+ | select res from sp_ezpl_print_string(:client_name, 27, 1) into :client_name; | ||
+ | select res from sp_ezpl_print_string(:doc_num, 22, 1) into :doc_num; | ||
+ | select res from sp_ezpl_print_string(:tovar_name, 22, 0) into :tovar_name; | ||
+ | |||
+ | ezpl_text = '^Q30,0,0 | ||
+ | ^W58 | ||
+ | ^H8 | ||
+ | ^P1 | ||
+ | ^S4 | ||
+ | ^AD | ||
+ | ^C1 | ||
+ | ^R0 | ||
+ | ~Q+0 | ||
+ | ^O0 | ||
+ | ^D0 | ||
+ | ^E18 | ||
+ | ~R255 | ||
+ | ^L | ||
+ | Dy2-me-dd | ||
+ | Th:m:s | ||
+ | Dy2-me-dd | ||
+ | Th:m:s | ||
+ | ATA,0,0,23,23,0,0,A,0,'||sclad_kredit_name||' | ||
+ | ATA,0,27,28,28,0,0,A,0,'||date_beg||' | ||
+ | ATA,0,59,45,45,0,0,A,0,'||barcode_read||' | ||
+ | BQ,98,110,2,6,39,0,0,'||barcode||' | ||
+ | ATA,0,149,23,23,0,0,A,0,'||client_name||' | ||
+ | ATA,0,176,28,28,0,0,A,0,'||doc_num||' | ||
+ | ATA,0,208,28,28,0,0,A,0,'||tovar_name||' | ||
+ | E | ||
+ | '; | ||
+ | |||
+ | suspend; | ||
+ | end</code> | ||
{{:godex20.jpg?nolink&800|}} | {{:godex20.jpg?nolink&800|}} |