Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
Delphi 12 Athens
|
Lücken in Bon Nummern, Kassenabschluss Nummern etc.
3. Jan 2023, 15:41
Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC
Hallo,
amngenommen man benutzt in einer Firebird Datenbank Generatoren die mittels Trigger
aktiviert werden um eindeutige IDs für sowas wie BON_ID eines Kassenzettels oder
die Kassenabschlussnummer eines Kassenabschlusses zu generieren.
Und angenommen die Anwendung stürzt irgendwo ab oder man kammt in eine Situation
wo man einen Rollback der Transaktion durchführt (sollte in der Anwendung nicht
passieren, aber Teufel ist ein Eichörnchen...) dann ist die generierte Nummer ja
verloren und man hat bei der nächsten Buchung eine Lücke in den Nummern, was so Leute
vom Finanzamt gar nicht gerne sehen dürften...
Wie mit sowas umgehen? Für diese Felder dann doch immer erst einen Select mit
Max(Spalte) durchführen und +1 machen? Damit nach einem Absturz bei der nächsten Bcuhung
die mit der anderen methodik "verbummelte ID" wieder benutzt wird?
Das würde in dem Fall sogar funktionieren, da die jeweiligen Tabellen i.d.R-. noch ein wie
oben beschriebenes Schlüsselfeld haben, was wieder eindeutig wäre und für jede Kasse immer
nur eine Buchung zu einem Zeitpunkt stattfindet, selbst wenn dieselbe Datenbank für mehrere
Kassen benutzt würde.
Grüße
TurbnoMagic
|