Wenn das Ergebnis des OPNQRYF nur sequentiell bearbeitet wird, hilft dir ggf. auch folgender Trick (mache ich im Moment bei einem Kunden mit V5R2:

create table qtemp/xxmytable as (
select ...
where ...
order by ...) with data
ovrdbf myfile qtemp/xxmytable

Ggf. die Ergebnismenge mit "fetch first nn rows" einschränken, da der User im Zweifel sowieso nicht alles ansieht.
Alternativ kann man auch einen QM-Query mit Parametern schreiben und diesen dann per "STRQMQRY ... OUTPUT(*OUTFILE) ... " laufen lassen.

Ist die Tabellenstruktur dann identisch kann man im OVRDBF noch den LVLCHEK rausnehmen.
Ggf. reicht auch nur die Umwandlung des Programmes mit Bezug auf die neue Datei.

Möglichkeiten gibts da viele.