0

Mit Funktion berechneten Wert als Zahl festschreiben

Hallo, ich brauche mal Eure Hilfe.

Ich habe in meiner Datenbank mehrere berechnete Felder. Die Ergebnisse dieser Berechnungen sollen dauerhaft hinterlegt werden.

Ich erkläre es mal am Beispiel: 

Feld (Zahl) Netto: 100 EUR

Feld (Zahl) MWST: 19 %

Funktion Brutto: Netto x MWST = 119 EUR

Wenn jetzt der MWST-Satz auf 20 % geändert wird, steht in allen, auch den alten Datensätzen 120 EUR statt den damals korrekten 119 EUR. Daher möchte ich den Wert im Zeitpunkt der Entstehung als Zahl (nicht als Funktion) hinterlegen.

Ich weiß, ich hatte das im Zusammenhang mit Rechnungen hier im Forum schon einmal gesehen, und es hatte glaube ich mit Trigger after Update zu tun. Ich finde es leider nicht mehr, obwohl ich  bereits seit Stunden suche... daher hier die Frage.

Vielen Dank im Voraus.

Jürgen

2 Antworten

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

    Hallo Jürgen, Funktionsfelder haben den Zweck, Werte anhand der hinterlegten Formel immer wieder neu zu berechnen. Für Werte, die nur einmal berechnet und dann dauerhaft gespeichert werden sollen, sind sie deshalb nicht geeignet.

     

    Dazu braucht man ein Datenfeld, in diesem Fall vom Typ 'Zahl' (unten: 'Brutto'). Und ja, man kann die Berechnung mit einem Trigger "Nach Änderung" ausführen und das Ergebnis fest in besagtes Feld schreiben lassen. An welcher Stelle, hängt aber von der genauen Konstellation ab. Als Beispiel ein Trigger "Nach Änderung" im Feld 'Netto':

     

    Brutto := if Netto > 0 and MWST then
       Netto / 100 * (100 + MWST)
    else
       null
    end

    • Jurgen_Wagner
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Danke sehr, ich probiere das mal so.