Regeln
Mit Regeln lassen sich im EFAST Online-Dienst Builder Gruppen und Felder ein- und ausblenden. In diesem Kapitel wird beschrieben, welche Konstrukte mit Regeln umgesetzt werden können und welche Beschränkungen es gibt.
WofĂĽr werden Regeln verwendet?
Regeln werden fĂĽr dynamische Effekte wie z.B. das Einblenden von Feldern und Gruppen oder der Validierung von Feldwerten verwendet.
Glossar
Regeleffekt: z.b. Einblenden, oder ausblenden
Zielelement: Ein Element, welches das Ziel des Regeleffekts ist
Bedingungselement: Ein Element, dessen Wert bestimmt, ob ein Regeleffekt ausgefĂĽhrt wird oder nicht.
Multiplizität: Ausgedrückt durch “a:b”. Bestimmt, wie oft ein Unterelementelement mindestens und maximal direkt unterhalb einer Gruppe vorkommen kann. Eine Multiplizität von
0:1 → Mindestens 0-mal, maximal 1-mal
1:1 → Exakt einmal
1:2 → Mindestens 1-mal, maximal 2-mal
0:* → Mindestens 0-mal, maximal unendlich oft
Regel-Arten
Feld einblenden
Notwendig:
Das Zielelement ist optional (untere Multiplizität = 0)
Das Zielelement ist ein Datenfeld
Gruppe einblenden
Notwendig:
Das Zielelement ist optional (untere Multiplizität = 0)
Das Zielelement ist eine Datenfeldgruppe
DatumsprĂĽfung
Notwendig:
Das Zielelement ist …
ein Datenfeld
von der Feldart Eingabe
vom Datentyp Datum
Das Zielelement hat weder Werte fĂĽr Min noch Max gesetzt
Regeln anlegen
Im MenĂĽ-Punkt Online-Dienst bearbeiten
können Regeln verwaltet werden. In der Seitenleiste (links) muss ein Zielelement ausgewählt werden. Über die Schaltfläche Element-Optionen
(drei Punkte) können Regeln hinzugefügt werden. Dabei wird das Zielelement festgelegt. Die Bedingungselemente für die Regel können im darauffolgenden Dialog festgelegt werden. Der Dialog ist so aufgebaut, dass er sich als Satz sprechen lässt.
Ein Bedingungselement muss sich entweder auf derselben Ebene wie das Zielelement befinden oder darĂĽber. Ein Bedingungselement kann ĂĽber das Stift-MenĂĽ unter wenn das Feld
festgelegt werden. Das gewählte Element muss sich entweder auf der hierarchisch selben Ebene oder über dem Zielelement befinden.
Im Folgenden ist der Ablauf zur Erstellung einer Regel abgebildet

Zielelement wählen

Regel fĂĽr Zielelement hinzufĂĽgen

Wenn-Feld oder Bedingungselement bearbeiten

Wenn-Feld oder Bedingungselement auswählen
Regeln bearbeiten und löschen
Im MenĂĽ-Punkt Online-Dienst bearbeiten
können Regeln verwaltet werden. Unter der Sektion Regeln können alle Regeln des Online-Dienstes bearbeitet oder auch gelöscht werden.

Regelverwaltung.
A: Regel-Identifikationsnummer
B: Schaltfläche zum Bearbeiten einer Regel
C: Schaltfläche zum Löschen einer Regel
Verknüpfung von “Wenn Felder” (Bedingungselementen”)
Manche Regeln erlauben die Verknüpfung von “Wenn Feldern” bzw. Bedingungselementen, sodass beispielsweise zwei Checkboxen angehakt sein müssen, damit das Zielelement eingeblendet wird. Bei der Verknüpfung von Regeln kann zwischen den beiden logischen Operationen UND und ODER gewählt werden. Dies gilt für alle “Wenn Felder”. Wird z.B. UND ausgewählt, müssen alle Bedingungen eintreten, damit ein Element eingeblendet werden kann, bei ODER reicht die Erfüllung einer Bedingung.

VerknĂĽpfung von Wenn-Feldern.
A: FĂĽgt eine weitere Bedingung hinzu
;
B: Element auswählen
C: VerknĂĽpfung entfernen
D: Form der Verknüpfung wählen
Validierung von Regeln
Innerhalb einer Minute werden mindestens einmal alle Regeln eines Online-Dienstes validiert. Die Validierung prüft, ob die Regeln weiterhin kompatibel sind. Zusätzlich werden die alle Regeln bei der Versionierung eines Online-Dienstes validiert, damit keine Online-Dienst-Versionen mit defekten Regeln entstehen.
Ist eine Regel defekt, wird sie in der Sektion Regeln mit einem Warn-Symbol markiert.

Defekte Regel.
A: Warn-Symbol
Regel-Fehlermeldungen
Die Regeln ermöglichen ein nutzerfreundliches Bearbeitungserlebnis in Online-Diensten. Ein Nachteil der Regeln ist, dass durch die Regelkonfiguration komplizierte Konstrukte entstehen können. Daher werden einige Konfigurationen unterbunden, indem wir alle Regeln gemeinsam einer Validierung unterzogen werden. Dies hat zur Folge, dass Online-Dienste erst versioniert werden können, wenn auch deren Regel-Validierung erfolgreich ist.
Im folgenden Abschnitt wird der Begriff Multiplizität (ausgedrückt durch die Notation “a:b”) benutzt. Die Multiplizität eines Datenelements bestimmt, wie oft es mindestens und maximal direkt unterhalb einer Gruppe vorkommen kann. Beispiele:
a:b → Das Element muss mindestens “a”-mal, aber maximal “b”-mal vorkommen.
a:* → Das Element muss mindestens “a”-mal vorkommen und kann unendlich oft vorkommen
0:* → Das Element kann 0-mal oder beliebig oft vorkommen, ist also optional
Bekannte Fehler:
R1
Problem: Tritt auf, wenn die Regel unbekannt ist.
Lösung: Die Regel muss gelöscht und neu erstellt werden
R2
Problem: Die Regel ist nicht unterstĂĽtzt.
Lösung: Die Regel muss gelöscht und neu erstellt werden
R5
Problem: In der Regel wird ein Code referenziert, der in der dazugehörigen Codeliste oder Werteliste nicht (mehr) existiert. Dies kann passieren, wenn Änderungen am Datenmodell durchgeführt werden, die Regel aber nicht angepasst wird.
Lösung: Die Regel muss angepasst oder gelöscht werden.
R6
Problem: Die Art des Datenelements passt nicht mehr zu der Art, die in der Regel vorausgesetzt wird.
Lösung: Die Regel muss angepasst oder gelöscht werden.
R8
Problem: Ein referenziertes Datenelement ist nicht optional.
Lösung: Passen sie die Multiplizität an.
R9
Problem: Ein referenziertes Datenelement wurde nicht gefunden. Das Datenmodell kann sich geändert haben, die Regeln wurden jedoch nicht angepasst.
Lösung: Die Regel muss angepasst oder gelöscht werden.
R10
Problem: Ein referenziertes Datenelement ist kein Datenfeld
Lösung: Die Regel muss angepasst oder gelöscht werden.
R11
Problem: Ein referenziertes Datenelement ist keine Datenfeldgruppe.
Lösung: Die Regel muss angepasst oder gelöscht werden.
R12:
Problem: Die Funktion hat einen Fehler.
Lösung: Die Regel muss gelöscht oder neu erstellt werden.
R13
Tritt auf, wenn zwei oder mehr Regeln Ziel- oder Bedingungselemente besitzen, deren Regeln sich direkt oder indirekt gegenseitig referenzieren.
Lösung: Regel 1 oder Regel 2 löschen.
Beispiel:
Regel 1:
Zielelement: “B”
Bedingungselement: “A”
Regel 2:
Zielelement: “A”
Bedingungselement: “B”
Diese Konstellation ist ungĂĽltig

R14
Tritt auf, wenn in einer Regel das Verhältnis (z:b) nicht im Verhältnis 1:b oder z:1 ist. “z” und “b” sagen aus, wie oft ein Element unterhalb des gemeinsamen Elternelements vorkommen kann. “z” bestimmt, wie oft das Zielelement der Regel vorkommen kann. “b” bestimmt, wie oft ein Bedingungselement unterhalb des gemeinsamen Elternelements vorkommen kann. Wie oft ein Element maximal vorkommen kann, wird berechnet aus der Multiplikation der oberen Schranken der Multiplizität im Strukturbaum. Folgende Beispiele erläutern den Zusammenhang:
Beispiel 1:
Das gemeinsame Elternelement ist Datenfeldgruppe G.
Die obere Schranke “b” der Multiplizität von Datenfeld A ist 2. “A” kann also maximal 2-mal vorkommen.
Die obere Schranke “z” der Multiplizität von Datenfeld B ist 2. “B” kann also maximal 2-mal vorkommen.
Das Verhältnis “z:b” ist 2:2 und damit ungültig.

Beispiel 2:
Das gemeinsame Elternelement ist Datenfeldgruppe G.
Die obere Schranke “b” der Multiplizität von Datenfeld A ist 2
Die obere Schranke der Multiplizität von Datenfeldgruppe “GG” ist 2.
Die obere Schranke der Multiplizität von Datenfeld B ist 1.
“z” = obere Schranke der Multiplizität von Datenfeldgruppe “GG” x obere Schranke der Multiplizität von Datenfeld B ist 1
“z” ist damit 2 x 1 = 2
Das Verhältnis “z:b” ist 2:2 und damit ungültig

Beispiel 3:
Das gemeinsame Elternelement ist Datenfeldgruppe G.
Die obere Schranke “b” der Multiplizität von Datenfeld A ist 1
Die obere Schranke der Multiplizität von Datenfeldgruppe “GG” ist 1.
Die obere Schranke der Multiplizität von Datenfeld B ist 2.
“z” = obere Schranke der Multiplizität von Datenfeldgruppe “GG” x obere Schranke der Multiplizität von Datenfeld B ist 1
“z” ist damit 1 x 2 = 2
Das Verhältnis “z:b” ist 1:2 und damit gültig

Beispiel 4:
Das gemeinsame Elternelement ist Datenfeldgruppe G.
Die obere Schranke “b” der Multiplizität von Datenfeld A ist 2
Die obere Schranke der Multiplizität von Datenfeldgruppe “GG” ist 1.
Die obere Schranke der Multiplizität von Datenfeld B ist 1.
“z” = obere Schranke der Multiplizität von Datenfeldgruppe “GG” x obere Schranke der Multiplizität von Datenfeld B ist 1
“z” ist damit 2 x 1 = 2
Das Verhältnis “z:b” ist 2:1 und damit gültig

R16
Problem: Die Regel erlaubt nicht, dass im referenzierten Datenelement der minimale Wert des Datums gesetzt ist.
Lösung: Der Wert Minimaler Wert
des Datenelements muss geleert werden.
R17
Problem: Die Regel erlaubt nicht, dass im referenzierten Datenelement der maximale Wert des Datums gesetzt ist.
Lösung: Der Wert Maximale Wert
des Datenelements muss geleert werden.
R18
Problem: Die Einheit der Zeitdifferenz ist nicht erlaubt.
Lösung: Die Regel muss gelöscht oder bearbeitet werden.
R19
Problem: Die Zeitdifferenz ist keine gĂĽltige Zahl. Es muss eine ganze Zahl wie 1 oder 2 sein.
Lösung: Die Regel muss gelöscht oder bearbeitet werden.
R23
Problem: Das referenzierte Datenelement hat eine Multiplizität höher als 1.
Lösung: Die Multiplizität des Elements muss auf maximal 1 gesetzt werden.