Birgittas Lösung funktioniert nur, wenn man nicht mit einer qualified DS für Input arbeitet.
Denn weiterhin gilt immer noch, dass eine Variable nur 1x in irgend einer DS verwendet werden kann.
Wenn man aber mit qualified DS arbeitet, muss man tatsächlich etwas mehr machen, wenn man:
a) sich nicht auf eine bündige Reihenfolge von Felder verlassen kann
b) und damit Birgittas Lösung verwenden muss.

dcl-ds DSFile extname('File') qualified;
end-ds;

dcl-ds KWDS qualified;
kw01 like(DSFile.KW01);
:
:
kwnn like(DSFile.KWnn) dim(nn);
end-ds;

eval-corr KWDS = DSFILE;