Das hat mich nun doch einiges an Zeit gekostet:
Aus der OPM-Welt kennt man das ja, man definiert die F-Bestimmung und zusätzlich eine externe DS derselben Datei um beim READ/CHAIN alle Felder gelesen zu bekommen, damit man im Debugger auch nicht verwendete Felder ansehen kann.
Im ILERPG mit V7R1 funktioniert das nun nicht mehr.
In der externen DS werden tatsächlich nur die Felder gefüllt, die vom RPGLE referenziert, also benutzt werden.
Wenn man das alte Verfahren benötigt, muss man nun eine DS (ohne extern) mit LIEKREC(Format:*input) definieren und beim READ/CHAIN dann diese DS als Ziel angeben.
Nun kann man erst alle Felder betrachten.
Was ich noch nicht ausprobiert habe ist, ob der Compiler anders reagiert, wenn man diese DS dann als CALL-Parameter verwendet. Wenn nicht wäre das an dieser Stelle fatal und man kann dann von einem CVTRPGSRC nur abraten.
Kleiner Nachteil: die DS ist automatisch qualified, was ein Menge Codeänderungen bedeutet.
Dies bekommt man leider auch nicht mit irgendeiner Optimized-Methode/Option weg.