Seitenhistorie
...
Aufbau einer Regel im R-S
Abbildung A
In Abb. A sehen Sie den Aufbau einer Regel mit Spalten (1) und Zeilen (2). Eine Spalte definiert genau einen Wert als Bedingung. In Abb. A sind das:
Spaltenname | Erstzulassung | Modell | Preis | Will_Verkaufen | PS |
---|---|---|---|---|---|
Wert (Bedingung) | 01.01.2013 | RS5 | 75.500 | TRUE | 450 |
Scroll Pagebreak |
---|
Diese Spaltenwerte sind die Bedingungen der Regel, auf die die Zeilen in den entsprechenden Spalten geprüft werden. Der Wert einer Spalte kann einen der folgenden Datentypen haben (die in Abb. A alle verwendet wurden):
...
In Abb. A ist Zeile #3 die gültige Auswahl für die Regel, da alle Werte in der Zeile identisch zum jeweiligen Spaltenwert sind. Die Regel hat also den Wert ${Angebot_3}
(3) . Wird die Regel aufgerufen, so ist das Ergebnis: Scroll Pagebreak
Codeblock | ||
---|---|---|
| ||
Aufruf (EVAL-Anweisung): ${NameDerRegel} Rückgabewert: ${Angebot_3} Endwert: Verweis auf "Angebot_3" |
Mit ${Angebot_3}
wird eine Ressource mit dem Namen Angebot_3
zurückgegeben, in diesem Fall z.B. eine binäre Ressource, die das entsprechende Angebot als Bild enthält. Die Verwendung dynamischer Anweisungen wird im Folgenden vorgestellt.
...
Im oberen Abschnitt wurden in der Regel, abgesehen von den Rückgabewerten, nur statische Werte verwendet. In der Praxis werden Sie in Regeln jedoch fast immer auch dynamische Werte in Spalten und Zeilen verwenden, denn i n einer Regel, in der alle Werte schon statisch feststehen, steht auch der Rückgabewert der Regel schon fest - Man könnte den Wert auch einfach einer Variablen zuweisen. Der Zweck von Regeln besteht aber darin, eine Möglichkeit zu schaffen, für unterschiedliche Eingangswerte ein unterschiedliches Verhalten zu implementieren.
Abbildung B
Typischerweise werden in einer Regel Datenstrom-Variablen verarbeitet, z.B. um dynamisch eine Ressource anzuwählen: Scroll Pagebreak
Codeblock | ||
---|---|---|
| ||
Je nach Nationalität des Kunden soll dessen Nationalflagge angezeigt werden. Die Nationalität des Kunden wird durch die Datenstrom-Variable DS.NATIONALITY geliefert - Bei jedem Kunden individuell. Um abhängig von DS.NATIONALITY die richtige Ressource auszusuchen, benötigt man eine Regel. Diese liefert, je nach Wert von DS.NATIONALITY, die richtige Ressource zurück. Ruft man die Regel auf, erhält man automatisch die richtige Ressource. |
Mögliche Werte von DS.NATIONALITY
:
Wert | GER | CH | AUT |
---|---|---|---|
Kunde kommt aus | Deutschland | Schweiz | Österreich |
Scroll Pagebreak |
---|
Binäre Ressourcen, die die Flaggen enthalten:
Name der Ressource | ger_flag | ch_flag | at_flag |
---|---|---|---|
Inhalt |
Dazugehörige Regel:
...
Erweitern | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
|
Scroll Pagebreak |
---|
Erweitern | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
|
...
Erweitern | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
|
Scroll Pagebreak |
---|
Erweitern | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
|
...
STRINGs
werden im R-S case-sensitive behandelt, es wird also zwischen Groß- und Kleinschreibung unterschieden: "HalloWelt" und "hallowelt" sind verschiedene Strings. Wenn Sie eine Datenstrom-Variable oder andere Ressource, die einen String enthält, in einer Regel verwenden, müssen Sie Groß- und Kleinschreibung beachten:
Beispielregel Gscroll-pagebreak
Der Rückgabewert der Regel ist aufgrund der Unterscheidung zwischen Groß- und Kleinschreibung 1. Da die exakte Schreibweise des Strings oft nicht bekannt ist, können Sie die Funktionen ToLowerS / ToUpperS benutzen: ToLowerS konvertiert alle Zeichen des Strings in Kleinbuchstaben, ToUpperS alle Zeichen in Großbuchstaben:
...
Codeblock |
---|
DEUTSCHE BANK_FRANKFURT_KREDITKARTE_VISA |
...
Wir erstellen eine Regel die lediglich überprüfen soll, ob per Kreditkarte gezahlt wird:
...