Seitenhistorie
...
Einen Überblick der Operatoren finden Sie auch im Abschnitt über EVAL-Anweisungen.
Manipulation durch Funktionen
Natürlich können Sie in Regeln auch Funktionen in EVAL-Anweisungen benutzen. Dies ist oft sinnvoll, um Daten aufzubereiten und zu manipulieren.
Nachfolgend werden einige Beispiele gezeigt, wie Sie Funktionen sinnvoll zur Datenmanipulation einsetzen können.
Für einen Überblick über alle Funktionen, beachten Sie bitte den Artikel über Funktionen in EVAL-Anweisungen.
Beispiel 1: ToLowerS() / ToUpperS()
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 G
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:
Beispielregel H
Der Rückgabewert der Regel H ist 0. String müssen in der Funktion in " " eingeschlossen werden. Sie müssen dann Groß-/Kleinschreibung
nicht mehr beachten, sondern nur sicherstellen, dass alle Strings ausschließlich Klein- oder Großbuchstaben enthalten.
Externe Strings in Ressourcen müssen Sie deshalb auch durch die Funktion konvertieren lassen:
Beispielregel I
In diesem Fall sind die Namen der Kunden in Variablen enthalten, die auch konvertiert werden müssen.
Beispiel 2: IndexS()
Wenn Sie sich nur dafür interessieren, ob ein String einen anderen String enthält, können Sie die Funktion IndexS verwenden.
Diese sucht nach einem Substring im String und gibt die Position zurück. Enthält der String den gesuchten String nicht, ist der Rückgabewert -1.
Angenommen, im Transaktions-Formular ist die Datenstrom-Variable DS.PAYMENT_TYPE definiert, mit folgender Syntax:
Codeblock |
---|
BANK_STADT_ZAHLUNGSART_optional:KREDITKARTENANBIETER |
wobei ZAHLUNGSART: KREDITKARTE sein kann.
Wir erstellen eine Regel die überprüft, ob per Kreditkarte gezahlt wird und in diesem Fall den Kreditkartenanbieter zurückgibt.
Codeblock | ||
---|---|---|
| ||
${
SubS(
DS.PAYMENT_TYPE,
SubtracI(AddI(IndexS("DS.PAYMENT_TYPE,"KREDITKARTE"),LengthS("KREDITKARTE_
")),"1"), LengthS(DS.PAYMENT_TYPE), AddI(IndexS("DS.PAYMENT_TYPE
","KREDITKARTE"), LengthS("KREDITKARTE_ "),
"1")
)
} |
Section | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|