Nochmal zur Erklärung:

Anders als bei der DB/400 (ODP) werden Descriptoren beim Beenden eines Programmes nicht geschlossen.
Wenn ich in C/C++ eine IFS-Datei eröffne (open, fopen) erhalte ich einen Descriptor auf dem die Befehle read(), write(), fread() usw. anwende. Ich muss also diese Datei auch mit close() / fclose() wieder schließen, sonst wird die Resource nicht freigegeben.

Mit C++ sieht es geringfügig anders aus, wenn ich die richtigen Klassen verwende. Dann übernimmt der sog. Destruktor das Schließen und freigeben.

Da aber inzwischen viele C-Funktionen aus ILE-RPG aufrufen, gibt es diesen Automatismus nicht.
Selbst wenn ich die Include-Datei ändere, hat das keine Auswirkung auf die Laufzeit ! Auch nicht bei einer neuen Umwandlung !!!
Die Systembeschränkung kann nicht umgangen werden, da sich die internen Tabellen damit nicht ändern lassen siehe hierzu: http://publib.boulder.ibm.com/iserie...is/sysconf.htm

Einzige Lösung ist hier die Fehlerbehebung des Software-Tools, d.h. CLOSE der IFS-Datei wenn man fertig ist !!!