Die IIf Funktion ist folgendermaßen aufgebaut:
IIf(expr, truepart, falsepart)
- expr: Der zu bewertende Ausdruck.
- truepart: Zurückgegebener Wert oder Ausdruck, wenn exprTrue ist.
- falsepart: Zurückgegebener Wert oder Ausdruck, wenn exprFalse ist.
Der Code lautet entsprechend:
IIf(
(Posteingang_Dokumententyp LIKE "*Vertrag*"),
(LEN(Posteingang_Vertragsgeber) > 0 AND LEN(CStr(Posteingang_Vertrag_gültig_ab)) > 0 AND LEN(Posteingang_Vertragsnehmer) >0),
true)
And
IIf(
(Posteingang_Dokumententyp LIKE "*Bericht*"),
(LEN(CStr(Posteingang_Ausführungsdatum_Bericht)) > 0),
true)
Wenn wir uns die erste IIf Funktion genauer ansehen, dann ist folgendes definiert:
- expr:
Posteingang_Dokumententyp LIKE "*Vertrag*"
- truepart:
(LEN(Posteingang_Vertragsgeber) > 0 AND LEN(CStr(Posteingang_Vertrag_gültig_ab)) > 0 AND LEN(Posteingang_Vertragsnehmer) >0)
- falsepart:
true
Als
truepart, prüfen wir ob die Länge aller drei Felder größer 0 ist. Die Funktion
LEN()
gibt automatisch
true
bzw.
false
zurück.
Als
falsepart geben wir direkt
true
zurück.
Durch den Rückgabewert wird der Validierung signalisiert, ob die eingegebenen Werte gültig (
true
) bzw. ungültig (
false
) sind.
Codeblock zum Kopieren:
iif((Posteingang_Dokumententyp LIKE "*Vertrag*"),(LEN(Posteingang_Vertragsgeber) > 0 AND LEN(CStr(Posteingang_Vertrag_gültig_ab)) > 0 AND LEN(Posteingang_Vertragsnehmer) >0),true) AND
iif((Posteingang_Dokumententyp LIKE "*Bericht*"),(LEN(CStr(Posteingang_Ausführungsdatum_Bericht)) > 0),true)
Viele Grüße / With best regards,
--
Gerardo Lisanti
Team Leader Product Management | DocuWare GmbH