# Feldregeln

### Feldregeln in aqua

Feldregeln ermöglichen die Steuerung des Verhaltens von Feldern, je nach den in den Steuerfeldern ausgewählten Werten.\
Diese Funktionalität hilft Ihnen, Logik in Ihre Projekte einzubauen, was es einfacher macht, Benutzer zu führen, Konsistenz zu gewährleisten und das Verhalten von Feldern zu automatisieren.

**Feldregeln können angewendet werden auf:**

* Anforderungen
* Testfälle
* Testszenarien
* Fehler

{% hint style="warning" %}
**Derzeit funktionieren Feldregeln nur mit Einzelauswahl-Feldern (entweder Standard- oder benutzerdefinierte Felder).**\
Das Standardfeld **„Status“** kann nicht mit Feldregeln verwendet werden, da es zur Definition des [Workflows ](https://docs.aqua-cloud.io/documentation/de-documentation/projektkonfiguration/workflow-konfiguration)dient.
{% endhint %}

### **Arten von Feldregeln**

Feldregeln bestehen aus zwei Hauptteilen: **Einschränkungen** und **Aktionen**.

#### **Einschränkungen**

Einschränkungen definieren, welche Werte in einem Feld verfügbar sind, abhängig vom in einem anderen Feld ausgewählten Wert.\
Sie helfen dabei, Optionen für Benutzer einzugrenzen oder ungültige Kombinationen zu verhindern.

**Beispiel**\
Angenommen, Sie haben eine Anforderung mit zwei Einzelauswahl-Feldern:

* **Feldname:** Feld A\
  **Feldwerte:** Element 1, Element 2, Element 3, Element 4, Element 5
* **Feldname:** Feld B\
  **Feldwerte:** Option 1, Option 2, Option 3, Option 4, Option 5

Sie können eine Regel wie folgt erstellen:

* Wenn der Wert von Feld B **Option 1** ist, zeigen Sie in Feld A nur **Element 1 und Element 2** an
* Wenn der Wert von Feld B **Option 2** ist, zeigen Sie in Feld A nur **Element 3 und Element 4** an
* Wenn der Wert von Feld B **Option 3** ist, zeigen Sie in Feld A **Element 1 und Element 5** an

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FTUjW2XidCWQ4wuBsen2c%2Fimage.png?alt=media&#x26;token=c3f4d4a6-6cdb-46a3-91ef-c5ec30083f7b" alt=""><figcaption></figcaption></figure>

Wenn keine Regel festgelegt ist, sieht es so aus: Unabhängig vom ausgewählten Element in Feld B enthält Feld A die vollständige Liste der Werte.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FBs1OX3iRtZHdsYiYTsAp%2Fimage.png?alt=media&#x26;token=797bd556-4651-4a9d-ab45-0d3cabd099a5" alt=""><figcaption></figcaption></figure>

Wenn eine Regel festgelegt ist, enthält **Feld A** eine Liste von Werten, die gemäß der definierten Regel durch den Wert aus **Feld B** gesteuert werden.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2F3clS26eSlGCgSAXVWYa8%2Fimage.png?alt=media&#x26;token=e2b2f39c-d888-47f8-8484-42b055b64daf" alt=""><figcaption></figcaption></figure>

**Sie können mehrere Einschränkungen für verschiedene Feldkombinationen definieren.**

Um eine **Einschränkungsregel** einzurichten, führen Sie die folgenden Schritte aus:

* Erstellen Sie Einzelauswahl-Felder in der [Vorlage](https://docs.aqua-cloud.io/documentation/de-documentation/projektkonfiguration/konfiguration-der-projektvorlage-felder) für Ihren Elementtyp, wenn Sie nicht nur die Standardfelder verwenden möchten.
* Wählen Sie das Projekt aus und navigieren Sie zu den **Feldregeln**.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2F8eLNYT2DJTKu1zltai2O%2Fimage.png?alt=media&#x26;token=854d1db6-974d-497d-9082-cd207edb17da" alt=""><figcaption></figcaption></figure>

* Wählen Sie den Elementtyp aus und anschließend das Feld, das betroffen sein soll.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2F5sqpJNpRzkMzo4T8xMcZ%2Fimage.png?alt=media&#x26;token=05e0f045-4b75-475a-98f2-1ac7d5f8e1eb" alt=""><figcaption></figcaption></figure>

* Dann steuerndes Feld

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2Fk9UMQYihBpfRgVqR066J%2Fimage.png?alt=media&#x26;token=5f58d600-d3a2-4a01-99fb-4bb4c06c0980" alt=""><figcaption></figcaption></figure>

* Wählen Sie dann den Wert aus dem steuernden Feld aus.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FfvoFf1D6b0h5kM2q6ahR%2Fimage.png?alt=media&#x26;token=1bdc04f0-3974-407e-9af0-e51cbb43ae55" alt=""><figcaption></figcaption></figure>

* Dann die Werte für das betroffene Feld, die angezeigt werden.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FPrcCgoh9xZ9GcU4lJPtc%2Fimage.png?alt=media&#x26;token=fd0b8c7d-cc02-43d3-95c7-632191eebd34" alt=""><figcaption></figcaption></figure>

* Änderungen speichern

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2F9t2WNLwGWuw0GUlxMv96%2Fimage.png?alt=media&#x26;token=e87209e0-78ed-4b20-839a-0f1fa70c0cb9" alt=""><figcaption></figcaption></figure>

#### **Aktionen**

Aktionen definieren, wie sich ein Feld basierend auf dem in einem anderen Feld ausgewählten Wert verhalten soll.\
Es gibt folgende Aktionsregeln, die definiert werden können:

* Wert festlegen
* Erforderlich
* Schreibgeschützt
* Hervorheben
* Sichtbar/Verborgen

**Beispiel:**\
Wenn der Wert von Feld A „Element 1“ entspricht, dann wird Feld B als „Erforderlich“ festgelegt.\
![](https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FGnyWCptHWFKh2uv9Vwo6%2Fimage.png?alt=media\&token=8a0cb7f6-b003-412c-a3e4-385a0846a8f8)

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FyWn6r9mbAcNMYljToFG7%2Fimage.png?alt=media&#x26;token=103acbb1-271c-43ab-be88-ca2f41c5ede1" alt=""><figcaption></figcaption></figure>

Dies ermöglicht es Ihnen, Formulare dynamisch je nach Kontext anzupassen.

**Einrichtung** von Aktionen:

* Gehen Sie zu **Projektkonfiguration → Feldregeln**.
* Wählen Sie das Element und dann das steuernde Feld (das Feld, dessen Wert die Regel auslöst).
* Wählen Sie die Regel **„Aktionen“** aus.
* Sobald Sie **„Aktionen“** ausgewählt haben, klicken Sie auf **„Neue Aktion hinzufügen“**.
* Wählen Sie dann das steuernde Feld aus dem Dropdown-Menü, das ein anderes Feld beeinflussen wird.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FIvB9r4NZpTsgBubKrrG6%2Fimage.png?alt=media&#x26;token=55e7d130-cb10-4432-b701-16e0d0a36ea8" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FHnriUrOaTWHHtspEkwqc%2Fimage.png?alt=media&#x26;token=6119f4f1-2092-4c7f-8986-ff5e0a266a95" alt=""><figcaption></figcaption></figure>

* Wählen Sie dann das betroffene Feld aus.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2FaQReR93oDZVeM3hI1tlZ%2Fimage.png?alt=media&#x26;token=aef48d9c-8075-48be-bb9e-00ab489b999f" alt=""><figcaption></figcaption></figure>

* Definieren Sie die gewünschte Logik und das Verhalten, indem Sie ein oder mehrere Kontrollkästchen aktivieren: Wert festlegen, erforderlich, schreibgeschützt, hervorheben, sichtbar.

<figure><img src="https://3920520305-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyZbW8vbNs5hz8x57emJJ%2Fuploads%2F0IuKl6qTLNoRkvTfa30P%2Fimage.png?alt=media&#x26;token=21e77ba1-7120-4b83-8d42-883264ea8b6e" alt=""><figcaption></figcaption></figure>

* Klicken Sie auf **Speichern**, um die Änderungen anzuwenden..

{% hint style="info" %}
Bitte beachten:

* Wenn Sie **„Wert festlegen“** auswählen, können Sie einen Standardwert definieren, der immer angewendet wird.
* Die Option **„Sichtbar“** ist standardmäßig aktiviert. Wenn Sie das Feld ausblenden möchten, deaktivieren Sie einfach das Kontrollkästchen.
* Die Option **„Sichtbar“** wird automatisch aktiviert, sobald ein Feld als erforderlich festgelegt wird.
  {% endhint %}

Darüber hinaus können Feldwerte aus Einzelauswahlfeldern mit gemeinsam genutzten Wertemengen automatisch gesetzt werden, wenn abhängige Elemente erstellt oder Defekte aus Testausführungen angelegt werden.
