Anmelden

View Full Version : Datenstationsanpassungsobjekt Teil 2



Mark_S
03-07-03, 13:29
Um ein AS/400-Dokument auf Laser A4 zu drucken habe ich ein Datenstationsanpassungsobjekt erzeugt und habe in der Source folgende Änderungen erzeugt:

: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. */
--------------------------------------------------------------------------------

Dann habe ich die entsprechenden Änderungen bei CHGPRTF vorgenommen:
CPI(15) FONT(*CPI) PAGRTT(*COR)

Jetzt druckt zwar einigermaßer korrekt, aber schneidet rechts immer noch ein paar Stellen ab.

Nun die Frage:

Woran liegt das.

muß man die CPI-Zahl für 15 noch anpassen (weniger als 17.1) oder die LPI-Zahl (geringer als 6,75) Wer weiß dafür den Code.
Zwischen den beiden ausgesternten Blöcken ist noch ein ganzer Datenblock:
ab ENVSIZXFM
bis TOPMARGINI

Muss das auch noch ausgesternt werden?

Sorry, ist ein bisschen umfangreich, aber ich hoffe, mir kann noch jemand helfen.

Sven Schneider
03-07-03, 23:15
Hallo,
du mußt nicht CPICOR verwenden.
Ich mache das nur um Listen, welche für 12" Endlos (A4 Hochformat) mit 132 Zeichen (17CPI) und 72 Zeilen gedacht waren, auf A4 Einzelblatt Hochformat auszudrucken.

Folgende Möglichkeiten :

1. Wenn du mit ca. 66-68 Zeilen hinkommst, dann kannst du auch ein WSCST von IBM verwenden , z.B. *HP4.
Im Printerfile gibst du dann CPI(18) FONT(*CPI) PAGRTT(0) oder CPI(20) FONT(*CPI) PAGRTT(0) an.

2. Wenn du volle 72 Zeilen brauchst kommst du bei 11,7" (A4) mit 6LPI nicht mehr hin. (6x11,7 = 70,2 - abzüglich Ränder)
Also, angepasstes WSCST wie beschrieben + ändere zusätzlich den Abschnitt wie folgt :



:CPICOR
CPI=15
ASCIIFNT= 258 /* 18 CPI */
FNTWTH= 80 /* 1440 | 18 = 80 */
FNTATR= 1
DATA =''X.


oder



:CPICOR
CPI=15
ASCIIFNT= 281 /* 20 CPI */
FNTWTH= 72 /* 1440 | 20 = 72 */
FNTATR= 1
DATA =''X.


Damit müssten dann auch 132 Zeichen komplett draufgehen.
Ob das dann noch gut lesbar ist steht auf einem anderen Blatt.


Sven

TGsoft
04-07-03, 08:11
Hallo,

ich würde mir im Druckermenu Papiergrösse mal die eingestellte Grösse einer A4 Seite anzeigen lassen.
HP Drucker sind schon mal auf weniger als 210 mm eingestellt. Dadurch wird einfach ein Stück von Deinem Text nicht gedruckt!

Gruß Thomas

Mark_S
08-07-03, 09:09
Vielen Dank erstmal für Eure Tipps! Sie haben mir beide weitergeholfen.

Das Schriftbild ist aber jetzt etwas klein. Bei anderen Drucker haben wir die Schriftart:

Letter Gothic Bold (interne Nummer für den hp Laser Jet 9000 ist die Nr. 74)

Kann ich im Datenstationsanpassungsobjekt diese Schriftart festlegen?

Vielen Dank schon mal!

Sven Schneider
08-07-03, 14:15
Die meisten FGID's findest du hier.

http://publib.boulder.ibm.com/iseries/v5r2/ic2924/books/c415713531.htm#TBLFONTINF

Du solltest aber immer Font Typ = U (Uniformly Spaced) verwenden.
Und daran denken den Paramter FNTWTH entsprechend anzupassen

Sven