Editcodes können NICHT als Variable angegeben werden sondern sind leider nur als Konstante erlaubt.
Dynamisches SQL ist per Programm ja möglich, da die Feldnamen als SQL-String an SQL übergeben werden und dem Programm nicht bekannt sein müssen.

Anders sieht es mit der Funktion %EDITC/%EDITW aus.
Dies ist eine RPGLE-Anweisung und kann eben NICHT dynamisch verwendet werden.
Der Feldname und Editcode müssen zur Compile-Zeit bereits feststehen.

Was das Drucken angeht, so reicht einfach ein 132/198-Stelliges Feld (je nach dem wie breit du druckst), da die Aufbereitung ja im Programm vorgenommen wird.