мета-данные страницы
  •  

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
armhim_config_mpprint [24.10.2022 17:36]
FeLDMaRShaL [Примеры кастомных бирок]
armhim_config_mpprint [06.06.2023 17:10] (текущий)
FeLDMaRShaL
Строка 12: Строка 12:
   - Подключить принтер к компьютеру посредством USB кабеля.   - Подключить принтер к компьютеру посредством USB кабеля.
   - Скачать и установить с сайта http://​fs.mertech.ru/​ драйвера для Windows (найти нужный драйвер можно по словам "​MPRINT TERRA NOVA TLP100",​ настраивать печать под Windows не обязательно)   - Скачать и установить с сайта http://​fs.mertech.ru/​ драйвера для Windows (найти нужный драйвер можно по словам "​MPRINT TERRA NOVA TLP100",​ настраивать печать под Windows не обязательно)
-  - Скачать утилиту "​MPRINTUtilityForLabel"​ с нашего ​WebDAV: "WebDAV\Share42\Agbis\_NonVersion\utils\mprintutilityforlabel_v2.0.0.3.zip" ​ (версия утилиты важна, на оффсайте не та версия,​ которая не умеет менять шрифты)+  - Скачать утилиту "​MPRINTUtilityForLabel"​ с нашего ​сайта: "https://​download.agbis.co/​download/​app/​utils/​MPRINTUtilityForLabel%20V2.0.0.3.zip" ​ (версия утилиты важна, на оффсайте не та версия,​ которая не умеет менять шрифты)
   - Произвести настройку принтера в утилите "​MPRINTUtilityForLabel"​   - Произвести настройку принтера в утилите "​MPRINTUtilityForLabel"​
  
Строка 37: Строка 37:
  
 ==== Примеры кастомных бирок ==== ==== Примеры кастомных бирок ====
-  * Бирка 35(ширина) на 42 (высота),​ печатается на бесконечной текстильной ленте с автоматическим обрезчиком (термотрансферная печать). На бирке дополнительно выводится заполненный доп.реквизит услуги под номером 100254 +  * Бирка 35(ширина) на 42 (высота),​ печатается на бесконечной текстильной ленте с автоматическим обрезчиком (термотрансферная печать). На бирке дополнительно выводится заполненный доп.реквизит услуги под номером 100254. ​{{ :sql_zpl1.zip sql}}
-<hidden Код процедуры>​ +
-<code sql>​CREATE OR ALTER procedure SP_GET_LABEL_ZPL_CUSTOM ( +
-    DOS_ID D_ID_INT64) +
-returns ( +
-    ZPL_TEXT D_BLOB) +
-as +
-declare variable SCLAD_KREDIT_NAME D_STR_50; +
-declare variable DATE_BEG D_STR_4096;​ +
-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_25; +
-declare variable CLIENT_NAME D_STR_250;​ +
-declare variable TOVAR_LINE1 D_STR_250;​ +
-declare variable TOVAR_LINE2 D_STR_50; +
-declare variable SMALL_FONT_SIZE D_INTEGER;​ +
-declare variable MEDIUM_FONT_SIZE D_INTEGER;​ +
-declare variable BIG_FONT_SIZE D_INTEGER;​ +
-declare variable VERY_SMALL_SIZE D_INTEGER;​ +
-declare variable NUM_OF_SERV D_INT64; +
-begin +
- +
-/* +
-Процедура делалась для принтера Mercury Terra nova TLP300 +
-Используется 4 разных размера одного и того же моноширного шрифта COURIER-NEW.TTF на текстильной ленте, бирка размером 35*42 при термотрансферной печати с отрезчиком: +
- +
-Очень маленький 20,13 максимум 35 символов +
-Маленький 25,17 максимум 24 симовлов +
-Средний 30,20 максимум 20 символа +
-Большой 50,33 максимум 10 символов +
-*/ +
- +
- ​VERY_SMALL_SIZE = 35; +
- ​SMALL_FONT_SIZE = 24;  +
- ​MEDIUM_FONT_SIZE = 20; +
- ​BIG_FONT_SIZE = 10; +
- +
- ​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,​ +
-     ​D.DOC_NUM,​ +
-     ​C.NAME,​ +
-     ​substring(TT.name from 1 for :​medium_font_size) as tovar_line1,​ +
-     ​substring(TT.name from :​medium_font_size+1 for :​medium_font_size+:​medium_font_size) as tovar_line1 +
- 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, :doc_num, :​client_name,​ :​tovar_line1,​ +
-      :​tovar_line2;​ +
- +
-       ​select aos.value_flt +
-from addon_order_services aos +
-where aos.line_id=:​dos_id and aos.addon_type_id=100254 +
-into :​num_of_serv;​ +
- +
-/* +
-^PW350 - ширина 350 мм +
-^MTT - термотрансферная +
-^MNN - бесконечная +
-^LL424 - длина 424 мм +
-*/ +
- +
-ZPL_TEXT = '^XA +
-^SZ2^JMA +
-^MCY^PMN +
-^PW350^MTT +
-^MNN^LL424 +
-~TA120 +
-^MMC +
-^MD25 +
-^PR4,4,4 +
-^JZY +
-^LH0,​0^LRN +
-^XZ +
-^XA +
-^CI33 +
- +
- +
-'; +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​sclad_kredit_name,​ :​very_small_size,​ 1) +
- into :​sclad_kredit_name;​ +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING_VALUE(' ​   '​||:​date_beg,​ :​date_end||'',​ :​medium_font_size) +
- into :​date_beg;​ +
- +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​barcode_read,​ :​big_font_size,​ 1) +
- into :​barcode_read;​ +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​client_name,​ :​small_font_size,​ 0) +
- into :​client_name;​ +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​doc_num,​ :​medium_font_size,​ 0) +
- into :doc_num; +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​tovar_line1,​ :​medium_font_size,​ 0) +
- into :​tovar_line1;​ +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​tovar_line2,​ :​medium_font_size,​ 0) +
- into :​tovar_line2;​ +
- +
- ​select res +
- from SP_ZPL_LABEL_PRINT_STRING(:​num_of_serv,​ :​medium_font_size,​ 0) +
- into :​num_of_serv;​ +
- +
- +
- +
-ZPL_TEXT = ZPL_TEXT || '​^A@,​20,​13,​E:​COURIER-NEW.TTF +
-^FO0,60 +
-^FD'​||sclad_kredit_name||'​^FS +
- +
-^A@,​25,​17,​E:​COURIER-NEW.TTF +
-^FO30,95 +
-^FD'​||date_beg||'​^FS +
- +
-^A@,​50,​33,​E:​COURIER-NEW.TTF +
-^FO40,120 +
-^FD'​||barcode_read||'​^FS +
- +
-^FO42,175 +
-^BY2 +
-^BCN,​60,​N,​N,​N,​N +
-^FD>;'​||barcode||'​^FS +
- +
-^A@,​25,​17,​E:​COURIER-NEW.TTF +
-^FO5,250 +
-^FD'​||' ​           '​||client_name||'​^FS +
- +
-^A@,​30,​20,​E:​COURIER-NEW.TTF +
-^FO5,280 +
-^FD'​||' ​  '​||doc_num||'​^FS +
- +
-^A@,​30,​20,​E:​COURIER-NEW.TTF +
-^FO5,310 +
-^FD'​||' ​  '​||tovar_line1||'​^FS +
- +
-^A@,​30,​20,​E:​COURIER-NEW.TTF +
-^FO5,340 +
-^FD'​||' ​  '​||tovar_line2||'​^FS';​ +
- +
-if (num_of_serv is not null) then +
-ZPL_TEXT = ZPL_TEXT || +
-'​^A@,​30,​20,​E:​COURIER-NEW.TTF +
-^FO5,370 +
-^FD'​||' ​  '​||num_of_serv||'​^FS';​ +
- +
-ZPL_TEXT = ZPL_TEXT || '​^PQ1,​1,​1,​Y +
-^XZ';​ +
- +
- ​suspend;​ +
-end</​code>​ +
-</​hidden>​ +
-<hidden Фото бирки>​+
 {{:​pasted:​20221024-171612.png?​400}} {{:​pasted:​20221024-171612.png?​400}}
-</​hidden>​ +  ​* Бирка 35(ширина) на 42 (высота),​ печатается на бесконечной текстильной ленте с автоматическим обрезчиком (термотрансферная печать). На бирке дополнительно выводится заполненный доп.реквизит услуги под номером 100255 ​{{ :​sql_zpl2.zip | sql}}  
-   +{{:​pasted:​20221024-173006.png?​400}}
-  ​* Бирка 35(ширина) на 42 (высота),​ печатается на бесконечной текстильной ленте с автоматическим обрезчиком (термотрансферная печать). На бирке дополнительно выводится заполненный доп.реквизит услуги под номером 100255 ​  +
-<hidden Код процедуры>​ +
-<​code ​sql> +
-CREATE OR ALTER procedure SP_GET_LABEL_ZPL_CUSTOM ( +
-    DOS_ID D_ID_INT64) +
-returns ( +
-    ZPL_TEXT D_BLOB) +
-as +
-declare variable SCLAD_KREDIT_NAME D_STR_50; +
-declare variable DATE_BEG D_STR_4096;​ +
-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_25; +
-declare variable CLIENT_NAME D_STR_250;​ +
-declare variable TOVAR_LINE1 D_STR_250;​ +
-declare variable TOVAR_LINE2 D_STR_50; +
-declare variable SMALL_FONT_SIZE D_INTEGER;​ +
-declare variable MEDIUM_FONT_SIZE D_INTEGER;​ +
-declare variable BIG_FONT_SIZE D_INTEGER;​ +
-declare variable FIRM D_STR_250;​ +
-begin+
  
-/* 
-Процедура делалась для принтера Mercury Terra nova TLP300 
-Используется 3 разных размера одного и того же моноширного шрифта COURIER-NEW.TTF липкой бирке размером 35*42 при термотрансферной печати с отрезщиком:​ 
- 
-Маленький 25,17 максимум 31 симовлов 
-Средний 30,20 максимум 26 символа 
-Большой 60,40 максимум 13 символов 
-Если заполнен доп реквизит бренд (фирма),​ то он печатается внизу бирки 
-*/ 
- 
- ​SMALL_FONT_SIZE = 31; 
- ​MEDIUM_FONT_SIZE = 26; 
- ​BIG_FONT_SIZE = 13; 
- 
- ​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,​ 
-     ​D.DOC_NUM,​ 
-     ​C.NAME,​ 
-     ​substring(TT.name from 1 for :​medium_font_size) as tovar_line1,​ 
-     ​substring(TT.name from :​medium_font_size+1 for :​medium_font_size+:​medium_font_size) as tovar_line1,​ 
-     ​(select aos.value_str from addon_order_services aos where aos.line_id=:​DOS_ID and aos.addon_type_id=100255) as firm 
- 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, :doc_num, :​client_name,​ :​tovar_line1,​ 
-      :​tovar_line2,​ :firm; 
-/* 
-^PW350 - ширина 350 мм 
-^MTT - термотрансферная 
-^MNN - бесконечная 
-^LL424 - длина 424 мм 
-*/ 
- 
-ZPL_TEXT = '^XA 
-^SZ2^JMA 
-^MCY^PMN 
-^PW350^MTT 
-^MNN^LL424 
-~TA120 
-^MMC 
-^MD25 
-^PR4,4,4 
-^JZY 
-^LH0,0^LRN 
-^XZ 
-^XA 
-^CI33 
- 
- 
-'; 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING(:​sclad_kredit_name,​ :​small_font_size,​ 1) 
- into :​sclad_kredit_name;​ 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING_VALUE(' ​   '​||:​date_beg,​ :​date_end||'',​ :​medium_font_size) 
- into :date_beg; 
- 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING(:​barcode_read,​ :​big_font_size,​ 1) 
- into :​barcode_read;​ 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING(:​client_name,​ :​small_font_size,​ 0) 
- into :​client_name;​ 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING(:​doc_num,​ :​medium_font_size,​ 0) 
- into :doc_num; 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING(:​tovar_line1,​ :​medium_font_size,​ 0) 
- into :​tovar_line1;​ 
- 
- ​select res 
- from SP_ZPL_LABEL_PRINT_STRING(:​tovar_line2,​ :​medium_font_size,​ 0) 
- into :​tovar_line2;​ 
- 
- ​select res 
-from SP_ZPL_LABEL_PRINT_STRING(:​firm,​ :​medium_font_size,​ 0) 
-into :firm; 
- 
- 
-ZPL_TEXT = ZPL_TEXT || '​^A@,​25,​17,​E:​COURIER-NEW.TTF 
-^FO80,10 
-^FD'​||sclad_kredit_name||'​^FS 
- 
-^A@,​30,​20,​E:​COURIER-NEW.TTF 
-^FO70,50 
-^FD'​||date_beg||'​^FS 
- 
-^A@,​60,​40,​E:​COURIER-NEW.TTF 
-^FO80,85 
-^FD'​||barcode_read||'​^FS 
- 
-^FO50,150 
-^BY2 
-^BCN,​60,​N,​N,​N,​N 
-^FD>;'​||barcode||'​^FS 
- 
-^A@,​25,​17,​E:​COURIER-NEW.TTF 
-^FO5,225 
-^FD'​||' ​  '​||client_name||'​^FS 
- 
-^A@,​30,​20,​E:​COURIER-NEW.TTF 
-^FO5,265 
-^FD'​||' ​  '​||doc_num||'​^FS 
- 
-^A@,​30,​20,​E:​COURIER-NEW.TTF 
-^FO5,305 
-^FD'​||' ​  '​||tovar_line1||'​^FS 
- 
-^A@,​30,​20,​E:​COURIER-NEW.TTF 
-^FO5,320 
-^FD'​||' ​  '​||tovar_line2||'​^FS';​ 
- 
-if (firm is not null) then 
-ZPL_TEXT = ZPL_TEXT || 
-'​^A@,​30,​20,​E:​COURIER-NEW.TTF 
-^FO5,350 
-^FD'​||' ​  '​||firm||'​^FS';​ 
- 
-ZPL_TEXT = ZPL_TEXT ||'​^PQ1,​1,​1,​Y 
-^XZ'; 
- 
- ​suspend;​ 
-end</​code>​ 
-</​hidden>​ 
-<hidden Фото бирки>​ 
-{{:​pasted:​20221024-173006.png?​400}} 
-</​hidden>​