Datensätze

Datensätze

Organisation

Aufbau und Nutzer

Erstellen & Versenden

Templates
Formulare
Inhaltsblöcke und Formularfelder

Sicherheit

Login

API

Integrationen

Rules Engine

Erste Schritte
Bedingte Sichtbarkeit

Regeln innerhalb von Datensätzen

Lokale Adressierung von Blöcken (self.siblings)

Üblicherweise können alle Blöcke mittels Punktnotation über blocks.slug adressiert werden. Innerhalb von Datensätzen funktioniert die Adressierung von Blöcken konzeptionell anders. Hintergrund ist die logische Dopplung eines jeden Blocks pro Datensatz. Im folgenden Beispiel ist für jede “Vorherige Versicherung” der Block “Name der Versicherung” vorhanden. Der bekannte Weg über blocks.insurance_name würde also die Frage aufwerfen, der Name welcher vorherigen Versicherung denn nun zurückgegeben werden würde.

Um dieses Problemfeld zu umgehen, sind Blöcke innerhalb von Datensätzen nicht über blocks.slug erreichbar. Um von außen auf diese Blöcke zuzugreifen, wird mit blocks.datensatz.rows gearbeitet (Gegenstand eines anderen Artikels).

An dieser Stelle soll es Sichtbarkeitsregeln innerhalb von Datensätzen gehen — d.h. die Eingaben innerhalb eines Datensatzes wirken sich auf die Sichtbarkeit von Blöcken innerhalb des gleichen Datensatz-Eintrags aus.

Um lokal begrenzt — innerhalb eines Datensatz-Eintrags — auf die “Geschwister” eines Blocks zuzugreifen, muss die self.siblings-Notation verwendet werden. Hierüber sind alle Blöcke innerhalb eines Datensatz-Eintrags genau so erreichbar wie normalerweise alle Blöcke über blocks.slug.

Beispiel:

icon
Das Feld Unterlagen soll nur angezeigt werden, wenn Nein ausgewählt wurde.
image

Beispiel-Code:

self.siblings.documents_present.options.documents_present_true.selected

Erklärung:

Über self erhält man Zugriff auf den aktuellen (lokalen) Eintrag des Datensatzes. Innerhalb von self.siblings sind die Blöcke unter ihrem jeweiligen slug im Schema self.siblings.slug — also beispielsweise self.siblings.documents_present — erreichbar.

Der Code self.siblings.documents_present.options.documents_present_true.selected liefert also genau dann true zurück (und schaltet damit den mit der Sichtbarkeitsregel belegten Block auf sichtbar), wenn die Option documents_present_true aus der Auswahl documents_present im jeweiligen Datensatz-Eintrag gerade ausgewählt ist.

Hier Regel kopieren:

icon
self.siblings.[Slug Radio Block].options.[Slug Radio Option].selected