@3) War mir bis dato nicht bekannt. Wo kann man den soetwas nachlesen?
@4) Welche SQL Status muß ich dann abfragen?
SQLCODE < 0 = Error
SQLCODE >= 0 und <> 100 (Satz gefunden, mit oder ohne Warnung)
SQLCODE = 100 (Satz nicht gefunden)

Ob es sich bei dem SQL Status um einen Fehler, eine Warnung oder nicht gefunden handelt hängt von den ersten beiden Stellen des SQL Status ab:
00 = Alles OK
01 = Warnung
02 = Nicht gefunden
Weder 00 noch 01 noch 02 = Fehler

Was mich bei der Lösung von Andreas stört, ist dass der WHENEVER einen GOTO bzw. einen TAG benötigt, was im Free Format RPG nicht zulässig ist.

Wir haben eine Funktion, die nach jedem SQL-Statement aufgerufen wird und die den SQLCODE prüft. Im Fehlerfall wird die Fehlernachricht ermittelt und als Escape Message zurückgegeben.

Einiges kann man in Database Embedded SQL Programming nachlesen.

Birgitta