RPG
Aus informatikvs
Version vom 2. Mai 2017, 16:40 Uhr von Informatikvs (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Zebra Etikett drucken == <pre> 0001.00 ***************************************************************** 0002.00 h dftname(hszebrac)…“)
Zebra Etikett drucken
0001.00 ***************************************************************** 0002.00 h dftname(hszebrac) 0003.00 h decedit('0,') datedit(*ymd.) 0004.00 h datfmt(*iso) timfmt(*iso) 0005.00 h Option(*NoDebugIo:*SrcStmt) 0006.00 /IF DEFINED(*CRTBNDRPG) 0007.00 h dftactgrp(*no) 0008.00 /ENDIF 0009.00 ***************************************************************** 0010.00 ***************************************************************** 0011.00 * Druckerdatei um Kartonkleber auf Zebradrucker zu drucken 0012.00 * CRTPRTF FILE(LEHRBIB/HSZEBRA) DEVTYPE(*LINE) 0013.00 Fhszebra O F 100 Printer UsrOpn 0014.00 ***************************************************************** 0015.00 d sprintf PR 10i 0 ExtProc('sprintf') 0016.00 d * Value 0017.00 d * Value Options(*string:*nopass) 0018.00 d * Value Options(*string:*nopass) 0019.00 d * Value Options(*string:*nopass) 0020.00 d * Value Options(*string:*nopass) 0021.00 d system PR 10i 0 ExtProc('system') 0022.00 d * Value Options(*string) 0023.00 ***************************************************************** 0024.00 d DrZeile# s 90a 0025.00 d AnzEti# s 5u 0 inz(1) 0026.00 d #dots c 'N,40,55' 0027.00 d #name s 30a 0028.00 d x s 5u 0 0029.00 d #col s like(x) 0030.00 d #row s like(x) 0031.00 ***************************************************************** 0032.00 0033.00 c ExSr Drck2Zebra 0034.00 0035.00 c Eval *inlr = *On 0036.00 c Return 0037.00 ***************************************************************** 0038.00 /free 0039.00 //************************************************************** 0040.00 //*** 0041.00 //************************************************************** 0042.00 BegSr Drck2Zebra; 0043.00 DrZeile# = 'ovrprtf file(HSZEBRA) HOLD(*YES) OUTQ(*JOB)'; 0044.00 If (system(%trim(%trim(DrZeile#))) <> 0); 0045.00 Dsply 'Fehler beim Ovrprtf !'; 0046.00 LeaveSr; 0047.00 EndIf; 0048.00 open HSZEBRA; 0049.00 0050.00 // Kleber initialisieren 0051.00 DrZeile# = '^XA' // start format 0052.00 + '^CFD' // alphanum. Font "D" 0053.00 + '^FWN' // Feld nicht drehen 0054.00 + '^LH0,0' // label home position 0055.00 + '^LRN' // nicht revers drucken 0056.00 + '^MD0' // Schwärzung wie Druckerdefault 0057.00 + '^MMT' // Vorschub nach Druck 0058.00 + '^MNY' // seperate Etiketten 0059.00 + '^MTT' // Thermotransfer-Etiketten 0060.00 + '^PMN' // nicht horizontal spiegeln 0061.00 + '^PON' // nicht auf den Kopf 0062.00 + '^PQ' // Druckqualität 0063.00 + %char(AnzEti#) 0064.00 + ',0,1,Y' // keine Pause, one replicate??, pause 0065.00 + '^PR2'; // langsam drucken 0066.00 Except DrZeile; 0067.00 0068.00 //*** 6 Adressaufkleber für Max Müller in 2 Spalten *** 0069.00 #row = 0; 0070.00 For x=1 to 9; 0071.00 #row += 50; 0072.00 If %rem(x+3 : 3) = 1; 0073.00 #name = 'Max Müller'; 0074.00 #row += 50; 0075.00 ElseIf %rem(x+3 : 3) = 2; 0076.00 #name = 'Maximilianstraße 1'; 0077.00 Else; 0078.00 #name = '80539 München'; 0079.00 EndIf; 0080.00 ExSr EineZeile; 0081.00 EndFor; 0082.00 0083.00 DrZeile# = '^XA'; 0084.00 Except DrZeile; 0085.00 EndSr; 0086.00 0087.00 //************************************************************** 0088.00 BegSr EineZeile; 0089.00 DrZeile# = ''; 0090.00 #col = 100; 0091.00 sprintf( %addr(DrZeile#) 0092.00 : '^A0%s^FO%s^FD%s^FS' 0093.00 : #dots 0094.00 : %char(#col)+','+%char(#row) 0095.00 : %trim(#name) 0096.00 ); 0097.00 Except DrZeile; 0098.00 DrZeile# = ''; 0099.00 #col = 800; 0100.00 sprintf( %addr(DrZeile#) 0101.00 : '^A0%s^FO%s^FD%s^FS' 0102.00 : #dots 0103.00 : %char(#col)+','+%char(#row) 0104.00 : %trim(#name) 0105.00 ); 0106.00 Except DrZeile; 0107.00 EndSr; 0108.00 //************************************************************** 0109.00 /end-free 0110.00 ***************************************************************** 0111.00 * Druckausgabe für Zebradrucker 0112.00 OHSZEBRA E DrZeile 1 0113.00 O DrZeile# 90