... SQL ist da definitiv das falsche Werkzeug. Wenn Du das denn unbedingt mit RPG machen willst/musst (immerhin schon besser geeignet als CL oder COBOL) musst Du das Abschnittweise abarbeiten. Wenn Du Dir eine based Variable definierst, positionierst Du diese durch Zuweisung des Pointers aus dem Schnittstellenprogramm auf den Start, durch Addition eines Offsets auf den Startpointer verschiebst Du dann deine "Fenstervariable" längs des erhaltenen Speichers. Am Ende des erhaltenen Speichers (spätestens) hast Du dann ein Problem...
Vielleicht solltest Du mal genauer sagen, was Du da vorhast, dann gibt es durchaus eine gute Chance, Dir einen besseren Vorschlag zu machen...

D*B