Es gab mal einen sehr guten Beitrag von B.Hauser zu diesem Thema !

Also:

Da Subfiles immer über die gesamte Breite eines Bildes gehen, schafft man es nicht, 2 Subfiles nebeneinander zu positionieren.

Man MUSS diese in 2 Fenster packen, die dann genau nebeneinander ausgegeben werden.

Die Fenster-Rahmen kann man ja ausblenden, so dass die optische Trennung nicht auffällt.
Wichtig ist USRRSTDSP auf Satzebene, damit wird verhindert, dass das System die Fenster steuert (automatisch wiederherstellt o.ä.).

WINDOW(..... *NOMSGLN *NORSTCSR), sonst hat jedes Fenster eine eigene Nachrichtenzeile und der Cursor ist auf das letzte angezeigte Fenster beschränkt.

Die Blätterfunktion muss vom Programm gesteuert werden, da sonst nicht gewährleistet ist, dass die linke und rechte Subfile zu einander passen, d.H., dass ROLLUP/ROLLDOWN per Bezugszahl ausgewertet werden müssen.

Da beim EXFMT nur 1 Format aktiv sein kann, muss man per WRITECTLFMT1, WRITECTLFMT2, READ FILENAME arbeiten.

Dann kann man in der INFDS das Format abfragen und so das tatsächliche Format einlesen. Dies setzt allerdings das Schlüsselwort ASSUME voraus, so dass der tatsächliche READ nicht wieder blockiert.

Ach ja, auf Grund deiner Breite muss das natürlich auf einem 132-stelligen Bild passieren.


Die 2. Möglichkeit ist, eine SFL mit genau einem Feld zu definieren und die Aufbereitung (Editierung, Farben) programmintern zu lösen:

Im ILERPG einfach mittels %EDITC, %EDITW für Dezimale.
Im RPG mittels SPECIAL-File, EXCEPT und O-Bestimmungen.