Automatisch hochzählende Nummerierung
Liebe Community,
ich habe eine Tabelle, die in einem Feld für jeden Datensatz eine laufende Nummer als Trigger bei einem neuem Datensatz anlegt. Das Format umfasst stets exakt dieselbe Anzahl an Zeichen und ist aufgebaut nach "RE-2025-XXX", wobei sich nur die letzten drei Ziffern laufend ändern. Ich habe mit folgendem Code versucht, die hinteren drei Zeichen zu extrahieren, da nur diese sich laufend ändern sollen:
let myRN := max((select Ausgangsdokumente where year(Rechnungsdatum) = 2025).substr('ID-Nr.', 9, 3)); 'ID-Nr.' := "AD-" + 2025 + "-" + format(number(myRN) + 1, "000")
Das hat auch bislang immer gut funktioniert, solange die Zahlen unter 100 geblieben sind. Allerdings bekomme ich keine Zählung über 100, d. h. alle neuen Datensätze haben damit die Nummer 100 (s. die unteren beiden):
Wo liegt das Problem und wie kann ich den Code modifizieren, dass die Zählung bei 101, 102 etc. fortgeführt wird?
Ich danke euch vorab schon herzlich für Eure Mühen!
2 Antworten
-
Hallo Vadomar mit
substr('ID-Nr.', 9, 3)
kriegst du nur zwei letzten Zeichen. Die Zählung begint mit 0 und richtig wäre substr('ID-Nr.', 8, 3)
Content aside
- vor 6 TagenZuletzt aktiv
- 2Antworten
- 36Ansichten
-
2
Folge bereits