Ausdrücke

Ausdrücke für erfahrene Nutzer – maximale Flexibilität bei Bedingungen und Validierungen mit der Common Expression Language.

Mit Ausdrücken können Sie komplexe Logik direkt schreiben, statt den visuellen Editor zu verwenden. Das bietet maximale Flexibilität – erfordert aber etwas Erfahrung.

Was sind Ausdrücke?

Ausdrücke sind kurze Formeln, die einen Wahrheitswert ergeben: Wahr oder Falsch.

Beispiel:

alter >= 18

Dieser Ausdruck ist wahr, wenn das Alter 18 oder höher ist, und falsch, wenn es darunter liegt.

Wann Ausdrücke verwenden?

✅ Verwenden Sie Ausdrücke für:

  • Komplexe Logik mit vielen Bedingungen

  • Mathematische Berechnungen

  • Mustervergleiche (Regex)

  • Funktionen wie heute() oder size()

  • Wenn Sie Erfahrung mit Programmierung haben

⚠️ Nutzen Sie den visuellen Editor für:

  • Einfache Bedingungen (1-3 Vergleiche)

  • Wenn Sie keine Programmiererfahrung haben

  • Schnelle, übersichtliche Bedingungen

Visueller Bedingungseditor

Die Sprache: CEL

Ausdrücke werden in der Common Expression Language (CEL) geschrieben. Das ist eine einfache Ausdruckssprache ähnlich wie JavaScript oder Python.

Keine Sorge: Sie müssen nicht programmieren können. Die Grundlagen sind schnell gelernt, und wir zeigen Ihnen viele Beispiele.

Grundlegende Syntax

Vergleiche

Operator
Bedeutung
Beispiel
Ergebnis

==

gleich

alter == 18

Wahr, wenn Alter genau 18 ist

!=

ungleich

alter != 18

Wahr, wenn Alter nicht 18 ist

>

größer als

alter > 18

Wahr, wenn Alter über 18 ist

<

kleiner als

alter < 18

Wahr, wenn Alter unter 18 ist

>=

größer oder gleich

alter >= 18

Wahr, wenn Alter 18 oder höher ist

<=

kleiner oder gleich

alter <= 18

Wahr, wenn Alter 18 oder darunter ist


Logische Verknüpfungen

Operator
Bedeutung
Beispiel

&&

UND (beide müssen wahr sein)

alter >= 18 && wohnort == 'Berlin'

||

ODER (mindestens eins muss wahr sein)

alter < 18 || student == true

!

NICHT (kehrt den Wert um)

!(alter < 18) (entspricht alter >= 18)


Texte (Strings)

Texte müssen in einfache Anführungszeichen gesetzt werden:

Nicht verwenden: "Unternehmen" (doppelte Anführungszeichen)


Zahlen

Zahlen werden ohne Anführungszeichen geschrieben:


Felder referenzieren

Feldnamen werden klein geschrieben und ohne Anführungszeichen:

Wichtig: Verwenden Sie den internen Feldnamen, nicht den Titel. Den internen Namen sehen Sie im Konfigurationsmenü unter "Allgemein" → "Name".

Häufige Ausdrücke und Funktionen

Anwendungsfall
Ausdruck
Erklärung

Einfacher Vergleich

antragsteller == 'Unternehmen'

Feld entspricht einem Wert

UND-Verknüpfung

antragsteller == 'Unternehmen' && umsatz < 500000

Beide Bedingungen müssen erfüllt sein

ODER-Verknüpfung

alter < 18 || student == true

Mindestens eine Bedingung muss erfüllt sein

Zahlenbereich

alter >= 18 && alter <= 65

Wert muss in Bereich liegen

Feld ausgefüllt

size(telefon) > 0

Feld ist nicht leer

Text enthält

kommentar.contains('dringend')

Text enthält bestimmtes Wort

Text beginnt/endet

postleitzahl.startsWith('10') oder email.endsWith('@example.com')

Text-Muster am Anfang/Ende prüfen

Regex-Muster

postleitzahl.matches('[0-9]{5}')

Komplexe Musterprüfung

Datum vergleichen

geburtsdatum < today()

Datum in Vergangenheit

Datum und Zeit

Wichtigste Funktionen:

  • today() – Heutiges Datum

  • duration('18y') – Zeitdauer (z.B. '18y' = 18 Jahre, '30d' = 30 Tage)

Beispiele:

Mathematische Operationen

Operator
Bedeutung
Beispiel

+

Addition

umsatz + gewinn

-

Subtraktion

umsatz - kosten

*

Multiplikation

umsatz * 0.19 (19% Mehrwertsteuer)

/

Division

umsatz / 12 (Monatsumsatz)

%

Modulo (Rest)

alter % 2 == 0 (gerade Zahl)

Beispiele:

(19% des Umsatzes sind weniger als 10.000 Euro)

(Mehr als 10 Mitarbeiter pro Bereich)

Reguläre Ausdrücke (Regex)

Wichtigste Zeichen: [0-9] = Ziffer, [a-z] = Buchstabe, {5} = genau 5-mal, + = eines oder mehr, \\ = Sonderzeichen maskieren, | = oder

Häufige Beispiele:

→ Ausführliche Regex-Referenz: Validierungsregeln

Klammern für Priorität

Verwenden Sie Klammern bei UND/ODER-Kombinationen:

(Alter 18+ UND Wohnort Berlin oder Hamburg)

(Kleine Unternehmen ODER kleine Freiberufler)

Komplexe Beispiele

Zusatzförderung für kleine Unternehmen:

Ermäßigung für bestimmte Gruppen:

Regionale Förderung mit PLZ-Prüfung:

(Berlin-Förderung nur für Berliner PLZ 10xxx-14xxx)

Fehlerbehebung

"Ungültiger Ausdruck":

  • Verwenden Sie ' statt " für Texte

  • Prüfen Sie Feldnamen (exakte Schreibweise!)

  • Prüfen Sie Klammern (jede öffnende braucht eine schließende)

"Feld nicht gefunden":

  • Verwenden Sie den internen Feldnamen (siehe Konfigurationsmenü)

  • Das Feld muss vor dem aktuellen Feld im Formular stehen

Bedingung funktioniert nicht:

  • Testen Sie Teile einzeln

  • Fügen Sie Klammern bei UND/ODER hinzu

  • Prüfen Sie Werte auf exakte Übereinstimmung

Regex funktioniert nicht:

  • Sonderzeichen maskieren: .\\., +\\+, -\\-

Testen und Best Practices

Testen Sie immer: Speichern → Vorschau → verschiedene Szenarien durchspielen (erfüllt, nicht erfüllt, Grenzfälle, leere Felder)

✅ Empfohlen: Einfach starten und schrittweise erweitern, Klammern bei UND/ODER setzen, komplexe Logik dokumentieren, internen Feldnamen verwenden

❌ Vermeiden: Mehr als 5-6 Bedingungen verketten, doppelte Anführungszeichen ("text"), fehlende Klammern, spätes Testen

Vom visuellen Editor zu Ausdrücken

Sie können jederzeit vom visuellen Editor zu Ausdrücken wechseln:

  1. Öffnen Sie die Bedingung im visuellen Editor

  2. Klicken Sie auf "Als Code bearbeiten"

  3. Der Ausdruck wird generiert (z.B. antragsteller == 'Unternehmen')

  4. Sie können ihn jetzt manuell erweitern

Weitere Hilfe

Bedingungen verstehen – Grundlagen und Anwendungsfälle

Visueller Bedingungseditor – Bedingungen ohne Programmierung

Validierungsregeln – Ausdrücke für Eingabeprüfungen

Feldtypen – Welche Felder können in Ausdrücken verwendet werden?

Referenz: Alle Operatoren und Funktionen

Vergleichsoperatoren

Operator
Bedeutung

==

gleich

!=

ungleich

>

größer als

<

kleiner als

>=

größer oder gleich

<=

kleiner oder gleich

Logische Operatoren

Operator
Bedeutung

&&

UND

||

ODER

!

NICHT

Mathematische Operatoren

Operator
Bedeutung

+

Addition

-

Subtraktion

*

Multiplikation

/

Division

%

Modulo (Rest)

String-Funktionen

Funktion
Bedeutung

size(feld)

Länge des Textes

feld.contains('text')

Enthält Text

feld.startsWith('text')

Beginnt mit

feld.endsWith('text')

Endet mit

feld.matches('regex')

Entspricht Muster

Datum-Funktionen

Funktion
Bedeutung

today()

Heutiges Datum

duration('18y')

Zeitdauer (Jahre, Monate, Tage)

Sonstige

Funktion
Bedeutung

null

Leerer/Fehlender Wert

''

Leerer String

Zuletzt aktualisiert

War das hilfreich?