Stimmt. Sagt aber noch lange nicht, dass der Code hier der Punkt wäre an dem das Problem auftritt.
Wenn es bei anderen Rechnungen einwandfrei geht und bei der nicht, dann bleibt nicht viel. Eine Ersatzrechnung auf sich selbst geht durch.
Wenn es auf der Ebene der Statements an sich mal nichts hat, bleibt bestenfalls eine Änderung in den Komponenten selbst oder in der Programmlogik.
Wenn eine Rechnung angelegt wird. Die zu ersetzende Rechnung gelöscht wird und nachher ein Update wird versucht ist das Vorgehen dasselbe.
Die Aussage:
Das zeigt jetzt die Rechnung 4. Zum Zeitpunkt des Fehlers habe ich das nicht abgefragt. Die Rechnung 4 wurde aber im DB Grid zum Fehlerzeitpunkt angezeigt.
Heißt auch, dass die Rechnung gelöscht gewesen sein könnte.
Frage: Ist die zu ersetzende Rechnung noch da?
Und: Im Code ist die Bestimmung von ErsatzRGnr gar nicht angegeben, aus einem Generator kommt sie ja sicher nicht.