[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Mar 2003
    Beiträge
    62

    Datenstationsanpassungsobjekt Teil 2

    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.


  2. #2
    Registriert seit
    Jun 2001
    Beiträge
    727
    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 :

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

    Code:
    :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

  3. #3
    Registriert seit
    May 2001
    Beiträge
    131
    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

  4. #4
    Registriert seit
    Mar 2003
    Beiträge
    62
    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!

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    727
    Die meisten FGID's findest du hier.

    http://publib.boulder.ibm.com/iserie...htm#TBLFONTINF

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

    Sven

Similar Threads

  1. Antworten: 0
    Letzter Beitrag: 07-11-06, 08:30
  2. Nur Teil eines Feldes updaten? SQL
    By JonnyRico in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 12-04-06, 08:31
  3. Runsqlstm 2. Teil
    By Akku in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 04-07-05, 10:23
  4. AS/400 obdc teil 2
    By logo_2 in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 28-04-03, 12:51
  5. RMTOUTQ Teil .... ?
    By alex in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 19-04-02, 08:05

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •