Es funktioniert beides, sowohl OVRDBF (hier können auch Teildateien angegeben werden) als auch per Variable im QM:

select &FIELDS
from &FILE
where &COND

dann
dcl &MYFIELDS *char 55
dcl &MYFILE *char 55
dcl &COND *char 55
STRQMQRY ... SETVAR((FIELDS &MYFIELDS) (FILE &MYFILE) (COND &MYCOND))

Beachte dass eine Variable maximal 55 Stellen haben kann, wenn mehr benötigt wird, kannst du beliebige Variablen definieren:

QM:
&VAR1&VAR2&VAR3&VAR4....

Somit kannst du jeden beliebigen SQL mit diesem QM ausführen.