C/EXEC SQL
C+ declare AUFGEScursor CURSOR for
C+ select * from AUFGES left join
C+ FESTCKS1 on BBELE = STBELE and BPOSI = STPOSI and STSTAT = 4
C+ where BTEIL<>'E' and BKENN = :WsGeb and BLIEW <= :WsWoche
C+ order by BKUND, BLIEW
C/END-EXEC

C/EXEC SQL
C+ OPEN AUFGEScursor
C/END-EXEC

/Free
Dou SQLCOD = 100 ; // 1)EOF
/End-Free

C/EXEC SQL
C+ FETCH NEXT FROM AUFGEScursor INTO :AUFGESsql, :FESTCKS1sql :AnzeigerSQL
C/END-EXEC
/Free
If SQLCOD <> 100 ; // 2)
//-------------------------------------------------------------------------
Druckausgabe
//-------------------------------------------------------------------------
Endif ; // 2)
Enddo ; // 1)

Hab den Namen AnzeigerSQL jetzt schon verkürzt wegen der Zeilenlänge. Bleibt aber bei dem Fehler.