Sorry ich schreib das hier nebenher...
..
Der Generator wird Ausschließlich im Trigger angesprochen
..
ab und an wird der Generator auch direkt angesprochen ( daher die Abfrage auf ID is null)
Ich schreib das auch nebenher:
Sind die zitierten Aussagen oben nicht widersprüchlich?
Und,
es ist vollkommen wurscht, ob der Generator nebenher angesprochen wird.
Entscheidend ist, woher die Werte kommen, die in der Tabelle landen. Oder anders:
Du kannst dem Generator soviel Werte aus dem Kreuz leiern, wie Du magst. Und mit denen kannst Du machen, was Du willst.
Wichtig ist nur, dass in einer Tabelle die ID aus genau einem Generator kommt und in Deinem Fall sicherheitshalber bedingungslos, also ohne irgendwelche Prüfungen.
Es ist nicht ungewöhnlich, einen Generator als unique Quelle für mehrere oder auch viele Tabellen zu verwenden.
Es gibt sogar Dinge, die dafür sprechen.
Das gilt unabhängig von Deinem spezifischen Problem hier, die Reparatur bzw. Prüfung der
DB Konsistenz würde ich als erstes machen und vor allem versuchen die Ursache zu finden.