Hallo,
oh, man kann das schon in 1 DSPF unterbringen, habe ich schließlich selbst gemacht:
Code:
A R CMSS1001 SFL
A S1AUSW 2A B 8 2
A 81 DSPATR(RI PC)
A COLOR(BLU)
*
A S1PRJ R 8 5REFFLD(CMPPRJ CMPRJ)
...
A R CMSC1001 SFLCTL(CMSS1001)
A N13 DSPMOD(*DS3)
A CHANGE(25)
A RTNCSRLOC(&$RCD## &$FLD## &$RCP##)
A RTNDTA
A OVERLAY PROTECT
A PUTOVR
A OVRDTA
A OVRATR
A SFLCSRRRN(&$CRNS1)
A SFLMODE(&$MODS1)
A 43N44 SFLDSP
A N44 SFLDSPCTL
A 44 SFLCLR
A 45 SFLEND
-* Wenn SFL nur einzeilig ist, SFLDROP und SFLFOLD aussternen
A* 04 SFLDROP(CF04)
A*N04 SFLFOLD(CF04)
-*---Anz Zeilen auf dem Bildschirm--------------v
A *DS4 SFLSIZ(0017)
A *DS3 SFLSIZ(0014)
-*---Anz SFL-Zeilen ungefaltet------------------v
A *DS4 SFLPAG(0016)
A *DS3 SFLPAG(0013)
...
A 3 78'Benutzer:'
A *DS3 3 58
A D1USR R O 3 89REFFLD(CMPUSR CMPRJ)
A *DS3 3 69
Man muss allerdings darauf achten, dass in jedem Format (außer im SFL) die Zeile
A N13 DSPMOD(*DS3)
vorkommt.
Dann stürzt das Pgm nicht ab, wenn der Bildschirm nur 80 Zeichen hat.
Gegenüber 2 DSPFs hat dies den Vorteil, dass ich bei Änderungen nicht doppelt pflegen muss.
Manche Sachen kann man allerdings so nicht machen, z.B. wenn die SFL-Felder bei 80-Zeichen eine andere Reihenfolge bekommen sollen.
Ggf. hilft dann aber ein eigenes Format weiter, so dass nicht die komplette Quelle ausgetauscht werden muss - einen Tod muss man halt sterben.
Gruß
Christian
Bookmarks