Danke nochmals an Euch alle. Aber scheinbar ist es ein Fehler innerhalb der Interbase-Komponenten die in Delphi7 verwendet werden.
Dort steht in der Hilfe zur IBTransaction folgendes:
----------
Die Methode CommitRetaining schließt die aktuelle Transaktion unter Beibehaltung des Transaktionskontextes.
Delphi-Syntax:
procedure CommitRetaining;
C++ Syntax:
void __fastcall CommitRetaining(void)
Beschreibung
Mit CommitRetaining können Sie alle in der aktuellen Transaktion aktualisierten, eingefügten und gelöschten Daten in die Datenbank eintragen und den Transaktionskontext erhalten. Die aktuelle Transaktion ist die zuletzt mit der Methode StartTransaction gestartete Transaktion.
Hinweis: Prüfen Sie erst den Status der Eigenschaft InTransaction, bevor Sie CommitRetaining aufrufen. Wenn in der Anwendung keine aktuelle Transaktion vorhanden ist, wird eine
Exception ausgelöst.
-----------
wäre ja zu schön gewesen wenn es funktioniert hätte.
Mit einem richtigen Commit geht alles.
Lieben Gruß
Jochen