> For the complete documentation index, see [llms.txt](https://help.aiaibot.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aiaibot.com/robot/workflows/workflow-builder/entscheidungen.md).

# Entscheidungen

Mit Hilfe von Entscheidungen können Verzweigungen in Workflows realisiert werden. Um eine Entscheidung hinzuzufügen, ziehen Sie sie von der Sidebar auf einen freien Bereich im Workflow Builder.

<figure><img src="/files/4jPtTQeIVZr1t8mT1zFE" alt="" width="375"><figcaption></figcaption></figure>

## Entscheidungspfade

Eine Entscheidung besteht aus Pfaden. Jeder Pfad enthält eine oder mehrere Bedingungen. Pfade werden nacheinander, in der Reihenfolge in der sie definiert sind, geprüft. Der erste Pfad, dessen Bedingungen erfüllt sind, wird für die weitere Ausführung des Workflows ausgewählt.

<figure><img src="/files/Atg1R86lOCcDyokYWMwr" alt="" width="375"><figcaption><p>Entscheidung mit drei Pfaden</p></figcaption></figure>

Jeder Pfad hat einen Ausgang, der mit einem grünen Kreis <img src="/files/FOJsCI0UYGiy1YizLwmf" alt="" data-size="line"> markiert ist. Verbinden Sie diesen mit dem Workstep, der als Nächstes ausgeführt werden soll. Trifft kein Pfad zu, wird der Workstep ausgeführt, der am unteren Ende der Entscheidung mit dem <img src="/files/Ue1HFQ15sFyFVZgGJwlZ" alt="" data-size="line"> Symbol verbunden ist.

Folgendes Beispiel zeigt eine Entscheidung, an der an allen Ausgänge Worksteps angebunden sind.

<figure><img src="/files/QJeFJIj0GrDzGRtU3ZDg" alt="" width="563"><figcaption><p>Entscheidung mit drei Pfaden und dem Default-Pfad</p></figcaption></figure>

## Bedingungen

Ein Entscheidungspfad enthält Bedingungen, die überprüft werden und entweder erfüllt (`true`) oder nicht erfüllt (`false`) sind. Mehrere Bedingungen können mit einem logischen `UND` oder `ODER` verknüpft werden.

Eine Bedingung setzt sich aus einem linken Operand, einer Operation und einem optionalen rechten Operand zusammen. Als linker Operand kann immer nur eine Variable gewählt werden.

Der Operator bestimmt, ob ein rechter Operand notwendig ist oder nicht.

Als rechter Operand kann entweder eine Variable, Freitext oder eine Mischung aus beidem verwendet werden.

Im folgenden Beispiel wird die Variable `counter` überprüft, ob sie grösser als 0 ist. Dabei ist `counter` der linke Operand, `Greter than` der Operator und `0` der rechte Operand.

<figure><img src="/files/Rs1FodeeEJZjbfqA2h2a" alt="" width="289"><figcaption><p>Pfad mit einer Bedingung</p></figcaption></figure>

Mit einem Klick auf *+ Bedingung hinzufügen* erhält dieser Pfad eine weitere Bedingung. Ob alle Bedingungen erfüllt sein müssen oder nur eine entscheiden Sie über die Schaltflächen `UND` oder `ODER`. `UND` bedeutet, dass alle Bedingungen erfüllt sein müssen um mit diesem Pfad im Workflow fortzufahren. `ODER` heisst, dass nur eine der Bedingungen erfüllt sein muss.

### Operatoren

Operatoren werden in binäre und unäre Operatoren unterteilt. Ein binärer Operator benötigt einen linken und rechten Operand, zum Beispiel `Greater than`. Ein unärer Operator benötigt nur einen linken Operanden, zum Beispiel `Is empty`.

Nicht jeder Operator ist für jeden Datentyp anwendbar. Nachdem Sie den linken Operanden ausgewählt haben, werden nur mehr die passenden Operatoren in der Auswahlbox angezeigt.

#### Has value / Has no value

Mit den Operatoren `Has value` und `Has no value` können Variablen geprüft werden, ob sie *null* sind. *null* ist eine spezielle Auszeichnung einer Variable, die angibt, dass die Variable keinen Wert hat.

Diese Operatoren sind für alle Variablentypen verfügbar.

#### Equals / Not equal

Diese Operatoren können verwendet werden, um Variablen auf Gleichheit oder Ungleichheit zu prüfen.

{% hint style="warning" %}
Wenn Sie `text` Variablen mit diesen Operatoren vergleichen, wird auf die Gross- und Kleinschreibung Rücksicht genommen!
{% endhint %}

#### Equals ignore case / Not equal ignore case

Diese Operatoren können ebenfalls verwendet werden, um Variablen auf Gleichheit oder Ungleichheit zu prüfen. Es wird jedoch dabei **nicht** auf die Gross- und Kleinschreibung Rücksicht genommen.

Diese Operatoren stehen nur für die Variablentypen `text`, `email`, `phone` und `url` zur Verfügung.

#### Greater than / Lower than / Greater than or equal / Lower than or equal

Mit diesen Operatoren können Variablen nach ihrer Grösse verglichen werden. Neben Zahlen lassen sich auch Datums- und Datumswerte mit Uhrzeit vergleichen.

Diese Operatoren stehen nur für die Variablentypen `integer`, `decimal`, `date` und `datetime` zur Verfügung.

#### Contains / Does not contain

Diese Operatoren prüfen, ob etwas in einer Variable vorhanden ist oder nicht. Wird dieser Operator auf eine `text` Variable angewendet, erfolgt die Prüfung unter Rücksichtnahme von Gross- und Kleinschreibung.

Für Collections, Datumsbereich und Datumsbereich mit Zeit können diese Operatoren ebenfalls verwendet werden. Damit lässt sich zum Beispiel untersuchen, ob ein gewünschtes Element in einer Collection vorkommt oder ob ein Datum in einem gewissen Datumsbereich liegt.

Diese Operatoren stehen nur für die Variablentypen `text`, `collection`, `dateRange` und `dateTimeRange` zur Verfügung.

#### Is true / Is false

Eine Variable vom Typ `boolean` kann mit Hilfe dieser Operatoren überprüft werden, ob sie `true` oder `false` ist.

Diese Operatoren stehen nur für den Variablentyp `boolean` zur Verfügung.

#### Empty / Not empty

Diese Operatoren prüfen, ob eine Variable leer ist. Es hängt vom Typ der Variable ab, wie "leer" zu interpretieren ist. Eine Variable vom Typ `text` ist leer, wenn sie keine Zeichen enthält, also eine Länge von 0 hat.

Variablen vom Typ `collection`, `files`, `carousel`, `optionList` sind leer, wenn sie keine Elemente beinhalten.

Diese Operatoren stehen nur für die Variablentypen `text`, `collection`, `files`, `carousel` und `optionList` zur Verfügung.

{% hint style="info" %}
Ist eine Variable *null*, liefert der Operator `Empty` den Wert `true` zurück.
{% endhint %}

#### Blank / Not blank

Dieser Operator steht speziell für `text` Variablen zur Verfügung. Er entfernt Leerzeichen und Zeilenumbrüche am **Anfang** und **Ende** des Variablenwertes. Danach verhält er sich gleich wie `Empty` / `Not empty`.

Dieser Operator steht nur für Variablen vom Typ `text` zur Verfügung.

{% hint style="info" %}
Ist eine Variable *null*, liefert der Operator `Blank` den Wert `true` zurück.
{% endhint %}

#### Is after / Is before / Is after now / Is before now

Diese Operatoren erlauben das Vergleichen von Datumswerten, mit und ohne Zeit. Bei `Is after` und `Is before` muss ein Vergleichswert angegeben werden. `Is after now` und `Is before now` verwenden hingegen das Datum und die Uhrzeit der Workflowausführung.

Diese Operatoren stehen nur für die Variablentypen `date` und `datetime` zur Verfügung.

#### Is JSON object

Dieser Operator prüft ob die Variable ein JSON-Objekt oder ein JSON-Array ist.

Er steht nur für Variablen vom Typ `text` oder `json` zur Verfügung.

#### Begins with / Ends with

Diese Operatoren prüfen, ob eine Variable vom Typ `text` mit einer gewissen Zeichenkette beginnt oder endet.

{% hint style="warning" %}
Die Prüfung erfolgt unter Berücksichtigung von Gross- und Kleinschreibung.
{% endhint %}

Diese Operatoren stehen nur für Variablen vom Typ `text` zur Verfügung.

### Vergleich Has Value / Empty / Blank

<table data-full-width="false"><thead><tr><th>Value</th><th>Has value</th><th>Is empty</th><th>Is blank</th></tr></thead><tbody><tr><td><em>null</em></td><td>No</td><td>Yes</td><td>Yes</td></tr><tr><td><code>""</code> (empty text)</td><td>Yes</td><td>Yes</td><td>Yes</td></tr><tr><td><code>" "</code> (only spaces)</td><td>Yes</td><td>No</td><td>Yes</td></tr><tr><td><code>"foo"</code></td><td>Yes</td><td>No</td><td>No</td></tr><tr><td><code>" foo"</code></td><td>Yes</td><td>No</td><td>No</td></tr><tr><td><code>"foo "</code></td><td>Yes</td><td>No</td><td>No</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.aiaibot.com/robot/workflows/workflow-builder/entscheidungen.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
