In RPG ist eine Variable Satzlänge für eine Datei leider nicht möglich.
Da Satzformat und Felddefinition in RPG konstant sind, kann man dies leider nicht dynamisieren.

Begründung:

Beim Open einer Datei wird intern ein Satzpuffer in der Länge der Datei angelegt.
Das definierte Feld des Satzformates liegt NICHT in diesem Puffer.
Bei einer WRITE-Anweisung überträgt RPG das Feld in den Satzpuffer, was dann zu einem internen Feldüberlauf führt. Günstigenfalls wird das programm mit einem MCH-Fehler beendet.
Bei einer READ-Anweisung liest RPG mit dem Namen des Satzformates. Da ggf. der Name nicht bei jeder Datei identisch ist, führt der READ zu einem RPG-Laufzeitfehler, daß das Satzformat nicht gefunden wurde.

Lösung:

1. Dynamisches SQL mit Descriptor !
2. COBOL-Programm