@MK
Ein Index enthält ausschließlich Schlüsselfelder. Mag Sein, dass der RPG-Compiler das zulässt, aber du musst ja trotzdem noch auf die Daten zugreifen können. Es macht aber wenig Sinn, alle Felder (max. 120) in den Index aufzunehmen.

@Kaufmann
Und es geht doch !
Verwende einfach einen sog. Update-Cursor !

declare cursor mycursor for
select ...
from mytable
where ...
for update [ of f1, f2, ...]

Open
Fetch mycursor into ...

update mytable set f1=...
where current of mycursor