Frequently Asked Question
Beispiele für Validierungs- oder Feldzuweisungsregeln
Last Updated 2 years ago
Beispiel 1:
Der Wert im Feld "Document_Date" darf nicht mehr als ein Jahr in der Zukunft bzw. Vergangenheit liegen.
Beispiel 2:
Datum im Feld Document_Date darf nicht älter als 14 Tage sein.
Fälligkeitsdatum(Due_Date) muss größer als das Belegdatum(Document_Date) sein.
"Mindestens ein Häkchen muss gesetzt sein" in den Feldern der Gruppe Ärzte.
"Es dürfen keine zwei Häkchen gesetzt sein" in den Feldern der Gruppe Ärzte
Der innerhalb der Regel berechnete Brutto-Betrag (Multiply(NettoBetrag,Add(1,MwSt-Satz))) muss mit dem Wert aus dem Feld "BruttoBetrag" übereinstimmen.
Der letzte Parameter (0.01) der Equals-Funktion gibt eine Toleranz an. Das ist hier nötig, weil es keine klassische Rundungsfunktion gibt.
In diesem Beispiel darf der errechnete Wert (NettoBetrag x 1,19) um 0,01 (d.h. um einen Cent) vom BruttoBetrag abweichen.
Wert eines Feldes per Validierung setzen.
Hier wird das Ergebnis, ob Netto*MwSt=Brutto ergibt (True/False) der Checkbox BruttoKorrekt zugewiesen.
Eines von zwei Feldern muss gefüllt sein.
Entweder muss in Feld_A ein Wert stehen oder in Feld_B. Beide zusammen dürfen nicht leer sein.
Übernahme eines Wertes von einem Kopfdatenfeld in Positionsdatenfelder, wenn Positionsdatenfelder leer sind.
Hier wird die Bestellnummer von den Kopf- in die Positionsdaten übernommen, wenn bei den Positionsdaten keine Bestellnummer vorhanden ist.
Betragsfeld soll immer positiv sein.
Hier wird geprüft, ob der Wert im Feld Betrag kleiner 0 ist. Wenn ja wird der Wert mit -1 multipliziert.
Der Wert im Feld "Document_Date" darf nicht mehr als ein Jahr in der Zukunft bzw. Vergangenheit liegen.
Today.AddYears(1).Greater(Document_Date) Today.AddYears(-1).Less(Document_Date)
Beispiel 2:
Datum im Feld Document_Date darf nicht älter als 14 Tage sein.
Today.SubtractDays(14).Less(Document_Date)Beispiel 3:
Fälligkeitsdatum(Due_Date) muss größer als das Belegdatum(Document_Date) sein.
Due_Date.Greater(Document_Date)Beispiel 4:
"Mindestens ein Häkchen muss gesetzt sein" in den Feldern der Gruppe Ärzte.
Not(And(And(Equals(AerzteMittel,False),Equals(AerzteSchlecht,False)),And(Equals(AerzteSehrGut,False),Equals(AerzteGut,False))))Beispiel 5:
"Es dürfen keine zwei Häkchen gesetzt sein" in den Feldern der Gruppe Ärzte
Not(And(Equals(AerzteSehrGut,True),Equals(AerzteGut,True))) Not(And(Equals(AerzteSehrGut,True),Equals(AerzteMittel,True))) Not(And(Equals(AerzteSehrGut,True),Equals(AerzteSchlecht,True))) Not(And(Equals(AerzteGut,True),Equals(AerzteMittel,True))) Not(And(Equals(AerzteGut,True),Equals(AerzteSchlecht,True))) Not(And(Equals(AerzteMittel,True),Equals(AerzteSchlecht,True)))Beispiel 6:
Der innerhalb der Regel berechnete Brutto-Betrag (Multiply(NettoBetrag,Add(1,MwSt-Satz))) muss mit dem Wert aus dem Feld "BruttoBetrag" übereinstimmen.
Der letzte Parameter (0.01) der Equals-Funktion gibt eine Toleranz an. Das ist hier nötig, weil es keine klassische Rundungsfunktion gibt.
In diesem Beispiel darf der errechnete Wert (NettoBetrag x 1,19) um 0,01 (d.h. um einen Cent) vom BruttoBetrag abweichen.
Equals(Multiply(NettoBetrag,Add(1,MwSt-Satz)),BruttoBetrag,0.01)Beispiel 7:
Wert eines Feldes per Validierung setzen.
Hier wird das Ergebnis, ob Netto*MwSt=Brutto ergibt (True/False) der Checkbox BruttoKorrekt zugewiesen.
BruttoKorrekt=Equals(Multiply(BetragExklMwSt,Add(1,MwstSatz_String)),BetragInklMwSt,0.01Beispiel 8:
Eines von zwei Feldern muss gefüllt sein.
Entweder muss in Feld_A ein Wert stehen oder in Feld_B. Beide zusammen dürfen nicht leer sein.
Not(And(IsNull(Feld_A),IsNull(Feld_B)))Beispiel 9:
Übernahme eines Wertes von einem Kopfdatenfeld in Positionsdatenfelder, wenn Positionsdatenfelder leer sind.
Hier wird die Bestellnummer von den Kopf- in die Positionsdaten übernommen, wenn bei den Positionsdaten keine Bestellnummer vorhanden ist.
PosBestellnummer=If(Or(Equals(PosBestellnummer,""),IsNull(PosBestellnummer)),Bestellnummer,PosBestellnummer)Beispiel 10:
Betragsfeld soll immer positiv sein.
Hier wird geprüft, ob der Wert im Feld Betrag kleiner 0 ist. Wenn ja wird der Wert mit -1 multipliziert.
Betrag=If(Betrag.Less(0),Betrag.Multiply(-1),Betrag)