Ich mache das meist anders:

dow 1=1;
exec sql fetch ...;
if sqlcode <> *zero;
leave;
endif;
// tuwas (Hier kann SQLCOD ruhig verändert werden
sqlcode = *zero;
enddo;