Einzelnen Beitrag anzeigen

BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
849 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Letzte vergebene Nummer speichern

  Alt 5. Aug 2022, 13:19
Kannst du noch mal präzisieren, was du mit "zuletzt erzeugte ID" meinst? Die ID, die tatsächlich zuletzt erzeugt wurde, oder diejenige, deren Erzeugung zuletzt gestartet wurde?
Danke für die Frage. Ich musste das selbst nochmal drüber nachdenken. Also ich versuche es nochmal deutlicher zu machen:

Die StoredProcedure, die die ID erzeugt sieht ungefähr so aus:

Code:
procedure GetNextID
  a := ErzeugePrefix;
 
  if Bedingung then
    b := gen_id(MeinGenerator, 1);
  else
    b := '';

  c := ErzeugeSuffix;

  result := a+b+c;
end;

Eine Reihenfolge von IDs wäre z.B.

XM07-001-Z
XM07-002-A
XM07-003-X
XM07-U
XM07-A
XM08-001-X
XM08-002-B
XM09-001-B
A444-5

Wenn dort keine fortlaufende Nummer enthalten ist, lässt sich nachträglich nur anhand der ID keine Reihenfolge mehr erkennen.

Der Generator wird nur unter einer bestimmten Bedingung genutzt, um in der Mitte der ID eine fortlaufende Nummer einzufügen. Im Mehrbenutzerzugriff brauche ich als letzte ID dann die ID, die den größten Generatorwert hat. Dafür darf auch keine Rolle spielen, welcher StoredProcedure-Aufruf zuerst aufgerufen worden ist oder durchgelaufen ist.
  Mit Zitat antworten Zitat