Zum Inhalt

Bedingungen in Regeln

Eine Bedingung legt fest, ob eine Regelanweisung ausgeführt wird. Das System vergleicht dabei den aktuellen Wert eines Datenbankfeldes mit einem vorgegebenen Vergleichswert — nur wenn dieser Vergleich zutrifft, wird die Anweisung des Dann-Teils ausgeführt.

Wo konfiguriere ich das in der Software?

PARAMETER - (Auswahl des Regel-Bereichs) - REGELN - NEU / ÄNDERN - Gruppe: "Bedingungen (Wenn)"

Über die Kennzeichen wird festgelegt, wie die Bedingung ausgeführt wird. Sofern "Immer ausführen" gewählt ist, stehen keine Eingrenzungen über Formeln zur Verfügung.

Grundstruktur einer Bedingung

Jede Bedingung besteht aus drei Teilen:

# Teil Beschreibung
1 Feld Das Datenbankfeld, dessen Wert geprüft wird
2 Operator Die Art des Vergleichs (z. B. gleich, ungleich, größer als)
3 Vergleichswert Der Wert, gegen den das Feld geprüft wird

Beispiel:

Suchbegriff (1) wird untersucht, ob dieser ungleich (2) leer (3) ist.

«Art.SuchBeg»

Das System liest den aktuellen Feldwert zur Auswertungszeit und führt den Vergleich durch. Ist die Bedingung erfüllt, wird die zugehörige Anweisung ausgeführt. Ist sie nicht erfüllt, wird die Anweisung übersprungen.

Beachten Sie

Keine Bedingung angegeben:

Wenn Sie keine Bedingung hinterlegen, wird die Regelanweisung bei jeder Auswertung bedingungslos ausgeführt. In bestimmten Auswertungspositionen weist die Analyse-Funktion auf fehlende Bedingungsprüfungen hin, wenn dies ungewöhnlich ist.

Welche Felder können geprüft werden?

Als Prüffeld stehen alle exportierbaren Felder der jeweiligen Datenbank zur Verfügung. Welche Felder konkret angeboten werden, hängt von der gewählten Auswertungsposition ab — die Auswertungsposition bestimmt, welche Datenbank und welcher Datensatzkontext gerade aktiv sind.

Beispiele für typische Prüffelder

  • Adressdatenbankfelder (z. B. Kundengruppe, Zahlungsbedingung, Land)
  • Artikeldatenbankfelder (z. B. Artikelgruppe, Einheit, Lagerort)
  • Vorgangsdatenbankfelder (z. B. Vorgangsart, Belegstatus, Währung)
  • Selektionsfelder (benutzerdefinierte Zusatzfelder)

Beachten Sie

Variabel lange Felder (Blob-Felder): Felder vom Typ Memo oder andere variabel lange Felder (Blob, z. B. Bilder) können in Bedingungen nicht ausgewertet werden. Die Analyse-Funktion gibt in diesem Fall eine Warnung aus. Verwenden Sie für solche Inhalte stattdessen Selektionsfelder mit fester Länge.

Vergleichsoperatoren

Der Operator bestimmt, wie Feld und Vergleichswert miteinander verglichen werden. Folgende Operatoren stehen zur Verfügung:

Operator Bedeutung
= Feldwert ist gleich dem Vergleichswert
<> Feldwert ist ungleich dem Vergleichswert
< Feldwert ist kleiner als der Vergleichswert
> Feldwert ist größer als der Vergleichswert
<= Feldwert ist kleiner oder gleich dem Vergleichswert
>= Feldwert ist größer oder gleich dem Vergleichswert

Groß-/Kleinschreibung

Textvergleiche werden in der Regel ohne Berücksichtigung der Groß- und Kleinschreibung durchgeführt.

Der Vergleichswert

Der Vergleichswert ist der feste Wert, gegen den das gewählte Feld geprüft wird. Er wird direkt in der Regeldefinition hinterlegt.

Für den Vergleichswert gelten folgende Besonderheiten:

  • Textwerte werden als Zeichenkette eingetragen (z. B. EUR, DE, 1).
  • Zahlenwerte werden ohne Tausendertrennzeichen eingetragen.
  • Datumsfelder folgen dem konfigurierten Datumsformat.
  • Kennzeichen-Felder (Ja/Nein) werden üblicherweise mit 1 (aktiv) oder 0 (inaktiv) verglichen.

Vergleich mit leerem Feld

Um zu prüfen, ob ein Feld keinen Inhalt hat, lassen Sie den Vergleichswert leer und verwenden Sie den Operator = mit zwei Hochkommata ''. So können Sie z. B. steuern, dass eine Anweisung nur ausgeführt wird, wenn ein bestimmtes Feld noch nicht befüllt wurde.

Mehrere Bedingungen innerhalb einer Regel

Einer Regelanweisung kann genau eine Bedingung zugeordnet werden. Wenn Sie komplexere Prüfungen benötigen — etwa eine UND-Verknüpfung mehrerer Kriterien oder eine ODER-Logik — stehen folgende Wege zur Verfügung:

UND-Verknüpfung

Legen Sie mehrere Regelanweisungen hintereinander an. Kombinieren Sie die Steuerfelder "Keine weiteren Regelanweisungen auswerten" und "Nur ausführen, wenn zuvor keine Regelanweisung ausgeführt wurde", um eine sequenzielle Prüflogik zu realisieren.

Verzweigte Bedingungen

Über das Konzept der verzweigten Bedingungen können Sie Wenn-Dann-Sonst-Strukturen abbilden. Dabei wird über den Vergleichswert für verzweigte Bedingung ein Sprung zu einer alternativen Anweisung gesteuert, wenn die Hauptbedingung nicht zutrifft.

→ Weitere Details: verzweigte-bedingungen.md

Bedingung und Auswertungsposition

Die Verfügbarkeit bestimmter Felder in der Bedingung hängt direkt von der gewählten Auswertungsposition ab. In manchen Auswertungspositionen ist keine Bedingung sinnvoll oder möglich — die Analyse-Funktion weist darauf hin, wenn eine Regel ohne Bedingung an einer solchen Position hinterlegt ist.

→ Weitere Details zu Auswertungspositionen: Auswertungspositionen – Konzept

Weiterführende Informationen