0

Datensatz automatisch einfügen

Hallo,

ich habe eine Monatsstatistik. Diese Enthält als erstes Feld ein Datum. Ich möchte nun an jedem 1'ten des Monats, dass automatisch ein neuer Row erstellt wird, bei dem gleich das aktuelle Datum eingefügt wird. Ist dies möglich?

Danke und Gruss

2 Antworten

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

    Hallo Renato, vollautomatisch geht das nicht. Um Funktionen auszuführen, muss die Datenbank geöffnet sein. Man könnte jedoch mit einem Trigger "Nach dem Öffnen der Datenbank ..." (zu finden bei aktiviertem Administratormodus in den Datenbank-Optionen) prüfen, ob für den aktuellen Monat schon ein Datensatz in der Tabelle "Monatsstatistik" existiert und, wenn nicht, einen mit dem Datum des Monatsersten anlegen. Der Code für diesen Trigger könnte bspw. so aussehen:

     

    let myM := yearmonth(today());
    let myX := cnt(select Statistik where yearmonth(Datum) = myM);
    if myX <= 0 then
       let newM := (create Monatsstatistik);
       newM.(Datum := date(year(today()), month(today()), 1))
    end

     

    Dann würde ein Datensatz mit dem Datum 01.02.2021 angelegt, egal, an welchem Tag im Februar die Datenbank zum ersten Mal geöffnet wird. 

    • Renato_Gubser
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Perfekt - funktioniert genau so wie ich es mir erwünscht habe :-) vielen Dank!