Syntaxregeln für Boolesche Aussagen
Wenn Sie eine Boolesche logische Aussage in die Anwendungskomponente FI-SL eingeben, müssen Sie bestimmte syntaktische Regeln beachten. In diesem Abschnitt werden die syntaktischen Regeln zum Anlegen von logischen Aussagen im FI-SL-System beschrieben.
Die in diesem Abschnitt beschriebenen Syntaxregeln sind in Release 4.0A für direkt eingegebene Validierungs- und Substitutionsaussagen und für Aussagen, die Sie mit dem Formel-Editor erstellen, gültig. Für Aussagen, die Sie direkt in Regeln eingeben, können diese Regeln nicht verwendet werden.
Wenn Sie eine Boolesche logische Aussage in das FI-SL-System eingeben, müssen Sie folgende syntaktischen Regeln verwenden:
Definieren Sie den Tabellennamen und den Feldnamen, die Sie in Ihrer Aussage verwenden werden. Der Feldname bezeichnet die Dimension, die die Werte enthält, auf die Sie sich in Ihrer Aussage beziehen.
Geben Sie den Tabellen- und den Feldnamen in folgendem Format ein:
Tabellenname-Feldname
Tabellenname und Feldname werden durch einen Bindestrich getrennt.
GLT1-RACCT
CCSS-KSTAR
Das System prüft, ob die vor dem Wert angegebene Dimension einen Wert enthält. Wenn der Wert in der Dimension enthalten ist, ist die Aussage wahr (TRUE), wenn der Wert nicht in der Dimension enthalten ist, ist die Aussage unwahr (FALSE).
Sie können das System so einstellen, daß es lediglich einen Teil des Feldwertes überprüft. Wenn Sie eine solche Teilprüfung veranlassen wollen, geben Sie folgendes ein:
Den Tabellennamen und den Feldnamen ( Tabellenname-Feldname )
Ein Leerzeichen
Sie müssen vor dem ersten Doppelpunkt ein Leerzeichen eingeben.
Einen Doppelpunkt ( : )
Die Stellen des Feldnamens, die geprüft werden sollen
Einen Doppelpunkt ( : )
1 steht immer für die erste Stelle des Feldes. (Die von Ihnen eingegebene Zahl steht nicht für einen Wert, sie repräsentiert die Position eines Werts in der Zeichenkette des Feldes.)
GLT1-RACCT :1-3:
Das System prüft nur die ersten drei Stellen des Feldes "Konto", um zu entscheiden, ob eine Bedingung wahr (TRUE) ist.
GLT1-RACCT :5-7:
Das System prüft die Stellen 5, 6 und 7 des Feldes "Konto", um zu entscheiden, ob eine Bedingung wahr (TRUE) ist.
GLT1-RACCT :2-:
Das System prüft ab Stelle 2 bis zum Ende des Feldes "Konto", um zu entscheiden, ob eine Bedingung wahr (TRUE) ist.
Trennen Sie die einzelnen Elemente Ihrer Aussage mit mindestens einem Leerzeichen.
Schließen Sie die Werte in einfache Anführungszeichen (') ein.
GLT1-RACCT = '500000'
COBL-BLART = 'SA'
Auf welche Werttypen Sie sich in einer Aussage beziehen können, lesen Sie in Typen von FI-SL-Aussagen .
Geben Sie Setnamen ein. Gehen Sie hierbei je nach Settyp folgendermaßen vor:
Geben Sie Basic- und Single-Dimension-Sets im folgenden Format ein:
Tabellenname und Feldname des Sets ( Tabellenname-Feldname )
Schlüsselwort IN
Setname
GLT1-RACCT IN KONTEN
Geben Sie Multi-Dimension-Sets im folgenden Format ein:
Schlüsselwort IN
Setname
IN KONTOKSTL
Wenn Sie in Ihrer Aussage eine Regel verwenden, geben Sie nur den Regelnamen ein ( ohne vorgestelltes & -Zeichen).
Schließen Sie Kommentare, die Sie in Ihre Aussage eingeben wollen, in Anführungszeichen ( " ) ein.
Texte, die auf diese Weise markiert sind, werden vom System nicht verarbeitet; sie dienen lediglich der Beschreibung der Aussage.
Wenn Sie die Aussage direkt eingeben oder den Experten-Modus im Formel-Editor verwenden, müssen Sie den kommentierenden Text vor der Aussage eingeben.
Wenn Sie den Text direkt in die Aussage eingeben, können Sie im kommentierenden Text keine Leerzeichen verwenden. Der Text darf außerdem nicht länger als 58 Zeichen sein. Wenn Sie einen kommentierenden Text eingeben wollen, der länger als 58 Zeichen ist, müssen Sie den Kommentar in zwei Gruppen eingeben und diese Gruppen durch ein Leerzeichen trennen.
Verwenden Sie die Booleschen logischen Operatoren NOT, AND, OR, NAND, NOR, --> und <->.
Der Operator NOT hat die höchste Priorität und wird in der Aussage zuerst verarbeitet, es sei denn, in der Aussage werden Klammern verwendet.
NOT (A OR B)
In diesem Beispiel wird zuerst die in Klammern eingeschlossene Aussage verarbeitet. Die anderen Operatoren werden in der Reihenfolge verarbeitet, in der sie in der Aussage erscheinen.
Informationen über die Booleschen logischen Operatoren finden Sie unter Die Verwendung Boolescher Operatoren in Wahrheitstabellen .
Verwenden Sie folgende mathematischen Standardoperatoren:
Operator | Definition |
< | kleiner als |
> | größer als |
< > | ungleich |
= | gleich |
<= | kleiner gleich |
>= | größer gleich |
Wenn Sie einen Benutzer-Exit in eine Aussage eingeben wollen, gehen Sie folgendermaßen vor:
a) Geben Sie den Buchstaben u (für Benutzer-Exit [englisch: user exit]) oder s (für einen Standard-FI-SL-Exit) ein.
b) Geben Sie die dreistellige Nummer des Benutzer-Exits (z.B. =U123 ) ein.
Den Form-Pool, der die Benutzer-Exits enthält, konfigurieren Sie in der Tabelle für mandantenabhängige Benutzer-Exits (T80D) im Customizing der Speziellen Ledger
, indem Sie wählen. Der Name des Form-Pools sollte den Namenskonventionen für Benutzer entsprechen und mit einem Z beginnen, damit er beim nächsten SAP-Upgrade nicht überschrieben werden kann.
Wenn Sie in einer Aussage eine mathematische Operation verwenden wollen, gehen Sie bitte folgendermaßen vor:
a) Verwenden Sie die in der folgenden Tabelle aufgeführten mathematischen Operatoren.
Symbol | Operation |
+ | Addition |
Subtraktion | |
Multiplikation | |
/ | Division |
b) Verwenden Sie Klammern, um die Reihenfolge festzulegen, in der die mathematischen Aussagen bewertet werden sollen.
Wenn Sie eine Matrix-Validierung oder eine Matrix-Substitution anlegen, können Sie folgende Operatoren auch verwenden, wenn Sie Einzelposten in einem Beleg validieren oder substituieren.
Sie müssen nach dem Schlüsselwort und unmittelbar vor der öffnenden Klammer ein Leerzeichen eingeben.
Operator | Beschreibung |
SUM( ) | Summe des Beleges |
AVG( ) | Durchschnittssumme des Beleges |
MAX( ) | Maximaler Wert aller Belegzeilen |
MIN( ) | Minimaler Wert aller Belegzeilen |
GROUP BY | Eine Gruppe von Summen mit einer anderen Gruppe von Summen vergleichen |
SUM ( BSEG-DMBTR ) < 50000
In diesem Beispiel kann der Benutzer für einen Beleg maximal den Betrag 50000 in Hauswährung buchen.
AVG ( TABLE-FIELD1 ) GROUP_BY TABLE-RYEAR TABLE-RVERS = AVG ( TABLE-FIELD2 ) GROUP_BY TABLE-RYEAR TABLE-RVERS
In diesem Beispiel ist die Aussage wahr (TRUE), wenn der Durchschnittswert für jede "Jahr/Version"-Kombination für FELD1 mit dem Durchschnittswert der "Jahr/Version"-Kombination für FELD2 identisch ist.
Sie können Regeln auch in Aussagen verwenden, in denen mathematische Operationen verwendet werden.
SUM ( BSEG-DMBTR ) WHERE RULE_1 < SUM ( BSEG-DMBTR ) WHERE RULE_2
In diesem Beispiel validiert das System die Summe der Hauswährung (DMBTR) gegen REGEL1. Wenn die Summe die in REGEL1 definierten Bedingungen erfüllt, prüft das System anschließend, ob die Summe kleiner als der Hauswährungsbetrag ist. Hierbei legt es die in REGEL2 definierten Bedingungen zugrunde.
Wenn Sie eine Aussage bei der Eingabe als wahr (TRUE) oder unwahr (FALSE) kennzeichnen wollen, können Sie TRUE und FALSE eingeben.
Wenn Sie in einer Booleschen Aussage Währungsarten eingeben wollen, müssen Sie die Währungsschlüssel in Klammern einschließen.
Sie geben nur dann einen Währungsschlüssel in eine Boolesche Aussage ein, wenn der Währungsschlüssel mehr oder weniger als zwei Stellen hat.
Sie können nur dann Währungsarten in eine Boolesche Aussage eingeben, wenn Sie die Aussage direkt oder mit Hilfe des Experten-Modus in den Formel-Editor eingeben.
Beispiel
BSEG-DMBTR < ‘10000(BEF)’
Siehe auch: