0

Nachträglich aufsteigende Nummer vergeben!

Hallo zusammen,

ich müsste nachträglich eine aufsteigende Nummer vergeben. Das Format der Nummer sieht folgendermaßen aus:

OB21-00000. 

Die 21 steht für das Jahr an dem der Datensatz erstellt wurde und OB ist ein Fester Wert. "00000" ist abhängig von der Anzahl der Datensätzte die in dem Jahr erstellt wurden und von einem Datum. 

Im Grunde genommen müsste ich nur einmal für das Jahr 2020 alle Numern nachträglich vergeben von OB20-00001 bis OB20-00300 (ist natürlich nicht genau) und für 2021, OB21-00001 bis OB21-00080 ca.! 

Danach würde meine Fortlaufende-Nr. ganz normal weiterlaufen! 

Ich weis das ich dies über eine Schleife in der Konsole realisieren kann, nur weis ich leider nicht wie der Code dazu aussehn muss. 

Ich hab es zwar schon über eine Schleife hinbekommen das alle Datzensätze die selbe Objektnummer bekommen haben aber das hätte ich auch über die Massendatenänderung geschaft. Mein Problem ist die aufsteigende Nummer und wie ich bei einer Schleife in Ninox einen Startwert und festlegen kann. 

Also das Ninox z.B. bei OB20-00500 Anfangen soll! 

Eine ganz allgemeine Formulierung des Codes würde mir schon ausreichen. 

Besten Dank im voraus 

Martin

1 Antwort

null
    • Ninox-Professional
    • planoxpro
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Martin, zur nachträglichen Durchnummerierung hier eine schnelle, pragmatische Lösung für Console oder Button (Tabellen- und Feldnamen in Großbuchstaben bitte durch tatsächliche Namen ersetzen):

     

    let Laufnr := 500;
    let myYear := 2020;
    for i in (select TABELLE where year(DATUM) = myYear) order by number(Nr) do
       i.(NUMMER := "OB" + substr(text(myYear), 2, 2) + "-" + format(Laufnr, "00000"));
       Laufnr := Laufnr + 1
    end