PDA

View Full Version : Datenstationsanpassungsobjekt



Mark_S
02-07-03, 09:39
Wir haben einen HP Laserjet 9000 direkt an die AS/400 angeschlossen. Unsere Listen sollen nur in Hochformat gedruckt werden, bei 132 Breite. Der Drucker druckt aber im Querformat. Alle Versuche über CHGPRTF mit Änderung von PAGRTT oder CPI führen dazu, das er zwar im Hochformat druckt, aber abschneidet.

Frage: Kann man über ein Datenstationsanpassungsobjekt, dem Drucker mitteilen, das er Hochformat drucken soll, bei gleichzeitiger Verkleinerung der Schrift?

Fuerchau
02-07-03, 10:40
Die einzige Möglichkeit ist hier tatsächlich die Angabe von PAGRTT(0) und CPI(nn) , dabei muss natürlich eine vom Drucker unterstützte CPI verwendet werden (10, 12, 15, 16.7, ...).

Ein Datenstationsanpassungsobjekt hilft da nicht weiter.

Sven Schneider
02-07-03, 19:42
Folgende Möglichkeiten :

Vorraussetzungen :
auf einem A4-Blatt Hochformat gehen folgende Zeichen pro Zeile auf das Blatt, unter Berücksichtigung der techn. Seitenränder eines A4-Laserdruckers:

10CPI - 78-79 Zeichen
12CPI - 93-94 Zeichen
15CPI - 117-118 Zeichen
16,7CPI - 130-132 Zeichen

Wenn du den Drucker direkt per IP (internes Netzwerkinterface/Printbox und Printerdevice oder remote Outq) angebunden hast, geht nur folgender Weg:

IBM hat leider vergessen in den WSCST-Objekten die Abschnitte CPICOR sinnvoll anzupassen. Außerdem hat man oftmals das Problem einen Ausdruck mit 12" Länge (72 Zeilen - 6LPI) auf einem A4-Blatt mit 11,7" unterzubringen.


Also:

- RTVWSCST DEVTYPE(*TRANSFORM) MFRTYPMDL(*HP4) SRCMBR(HP4) SRCFILE(QTXTSRC)
- Anpassung der erzeugten Source in folgenden Abschnitten :


:INITPRT
/* DATA ='1B45'X. */
DATA ='1B451B266C323641'X. /* PAGE SIZE A4 */
...

:VARLSPC
VAROFFSET= 3
VARLEN= 3
VARTYPE=CHRDEC
CNVNUM= 1
CNVDEN= 48
/* DATA ='1B266C00000043'X. */
DATA ='1B266C000000431B266C372E313143'X. /* 6,75 LPI */
:CPICOR
CPI=10
/* ASCIIFNT= 255 */
/* FNTWTH= 84 */
ASCIIFNT= 85 /* 12 CPI */
FNTWTH= 120 /* 1440 | 12 = 120 */
FNTATR= 1
DATA =''X.
:CPICOR
CPI=12
/* ASCIIFNT= 255 */
/* FNTWTH= 84 */
ASCIIFNT= 230 /* 15 CPI */
FNTWTH= 96 /* 1440 | 15 = 96 */
FNTATR= 1
DATA =''X.
:CPICOR
CPI=15
ASCIIFNT= 254 /* 17.1 CPI */
FNTWTH= 85 /* 1440 | 17.1 = 85 */
FNTATR= 1
DATA =''X.
:PRTORIENT
ORIENT=PORTRAIT
DATA ='1B266C304F'X.
:PRTORIENT
ORIENT=LANDSCAPE
/* DATA ='1B266C314F'X. */
DATA ='1B266C304F'X. /* IMMER HOCHFORMAT */
...

/* KEINE SEITENFORMATIERUNG */
/* :PAGLENL */
/* VAROFFSET= 3 */
/* VARLEN= 3 */
/* VARTYPE=CHRDEC */
/* DATA ='1B266C00000050'X. */
/* :PAGSIZXFM. */
/* :PAGSIZE */ /* JPOSTD */
/* PAGWTH= 8390 */
/* PAGLEN=11338 */
/* DATA ='1B266C373241'X. */
/* :PAGSIZE */ /* 5.8 X 8.3 */
/* PAGWTH= 8352 */
/* PAGLEN=11952 */
/* DATA ='1B266C303141'X. */
/* :PAGSIZE */ /* A4 */
/* PAGWTH=11952 */
/* PAGLEN=16848 */
/* DATA ='1B266C323641'X. */
/* :PAGSIZE */ /* A3 */

/* PAGWTH=16838 */
/* PAGLEN=23811 */
/* DATA ='1B266C323741'X. */
/* :PAGSIZE */ /* JIS B5 */
/* PAGWTH=10368 */
/* PAGLEN=14544 */
/* DATA ='1B266C343541'X. */
/* :PAGSIZE */ /* JIS B4 */
/* PAGWTH=14570 */
/* PAGLEN=20636 */
/* DATA ='1B266C343641'X. */
/* :PAGSIZE */
/* PAGWTH=10440 */ /* 7.25 X 10.5 */
/* PAGLEN=15120 */
/* DATA ='1B266C303141'X. */
/* :PAGSIZE */ /* 8.5 X 11 */
/* PAGWTH=12240 */
/* PAGLEN=15840 */
/* DATA ='1B266C303241'X. */
/* :PAGSIZE */ /* 8.5 X 14 */
/* PAGWTH=12240 */
/* PAGLEN=20160 */
/* DATA ='1B266C303341'X. */
/* :PAGSIZE */ /* 11 X 17 */
/* PAGWTH=15840 */
/* PAGLEN=24480 */
/* DATA ='1B266C303641'X. */
/* :EPAGSIZXFM. */
...

/* KEIN ÄNDERUNG OBERER RAND */
/* */
/* :TOPMARGINI */
/* VAROFFSET= 8 */
/* VARLEN= 4 */
/* VARTYPE=CHRDEC */
/* CNVNUM= 1 */
/* CNVDEN= 48 */
/* DATA ='1B266C31431B266C0000000045'X. */
/* KEIN ÄNDERUNG TEXTLÄNGE */
/* :TEXTLENL */
/* VAROFFSET= 3 */
/* VARLEN= 4 */
/* VARTYPE=CHRDEC */
/* DATA ='1B266C00000000461B26613052'X. */


- Erstellen WSCST mit CRTWSCST WSCST(QHPL/HP4) SRCFILE(QTXTSRC)
- Ändern Printerdevice oder remote OUTQ mit TRANSFORM(*YES) MFRTYPMDL(*WSCST) WSCST(QGPL/HP4)
- Ändern Printerfile mit CPI(15) und FONT(*CPI) PAGRTT(*COR)

Noch ein Hinweis: durch den Parameter PAGRTT(*COR) und den angepassten Werten CPICOR in der WSCST, werden die CPI-Werte wie folgt angepasst :

10--> 12CPI
12 --> 15CPI
15 --> 17.1CPI

Außerdem wird immer im Hochformat gedruckt. Damit du auch 72 Zeilen auf die A4 Seite bekommst wurde der Zeilenabstand auf 6.75LPI reduziert.

Viel Spaß!

Sven