SAP ABAP Class CL_STACK_ENGINE_BRF (BRF: Formula Interpreter / Stack Engine)
Hierarchy
☛
SAP_BASIS (Software Component) SAP Basis Component
⤷
BC-SRV-BRF (Application Component) Business Rule Framework
⤷
SBRF (Package) Business Rule Framework

⤷

⤷

Properties
Class | CL_STACK_ENGINE_BRF | |
Short Description | BRF: Formula Interpreter / Stack Engine | |
Super Class | ||
Instantiability of a Class | 2 | Public |
Final |
General Data
Message Class | ||
Program status | ||
Category | 0 | |
Package | SBRF | Business Rule Framework |
Created | 20020522 | SAP |
Last change | 20110908 | SAP |
Shared Memory-enabled | ||
Fixed point arithmetic | ||
Unicode checks active |
Forward declarations
Class CL_STACK_ENGINE_BRF has no forward declaration.
Interfaces
Class CL_STACK_ENGINE_BRF has no interface implemented.
Friends
Class CL_STACK_ENGINE_BRF has no friend class.
Attributes
# | Attribute | Level | Visibility | Read only | Typing | Associated Type | Initial Value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
Static Attribute | Protected | Type reference (TYPE) | SBRF_STACK_REGISTER | Register A | 20041120 | ||
2 | ![]() |
Static Attribute | Protected | Type reference (TYPE) | SBRF_STACK_REGISTER | Register B | 20041120 | ||
3 | ![]() |
Static Attribute | Protected | Type reference (TYPE) | SBRF_STACK_REGISTER | Register Y | 20041120 | ||
4 | ![]() |
Static Attribute | Protected | Type reference (TYPE) | TBRF150_T | BRF: Expression | 20020522 | ||
5 | ![]() |
Static Attribute | Protected | Type reference (TYPE) | TBRF190_T | BRF: Operators - Table Category | 20020522 | ||
6 | ![]() |
Static Attribute | Protected | Type reference (TYPE) | TBRF192_T | BRF: Operators and Result Types - Table Category | 20030605 |
Methods
# | Method | Level | Visibility | Method type | Description | Created on |
---|---|---|---|---|---|---|
1 | ![]() |
Static method | Private | Method | BRF: Forward Message | 20020522 |
2 | ![]() |
Static method | Public | Method | Calculates Difference Between Date 1 and Date 2 | 20020522 |
3 | ![]() |
Static method | Public | Method | Calculates Formula with Stack Engine | 20020522 |
4 | ![]() |
Static method | Public | Method | Executes Stated Operation on Operand Stack | 20020522 |
5 | ![]() |
Static method | Public | Method | Token/Operand on Stack | 20020522 |
6 | ![]() |
Static method | Public | Constructor | CLASS_CONSTRUCTOR | 20040809 |
7 | ![]() |
Static method | Public | Method | Determines Decimal Places | 20020522 |
8 | ![]() |
Static method | Public | Method | Determines Correct Operand Length | 20020522 |
9 | ![]() |
Static method | Private | Method | BRF: One Line from TBRF190 Acc. to Complete Key | 20020522 |
10 | ![]() |
Static method | Private | Method | BRF: A Line from TBRF192 acc. to Complete Key | 20030605 |
11 | ![]() |
Static method | Private | Method | Prepares Next Parameter for Processing | 20041120 |
Events
Class CL_STACK_ENGINE_BRF has no event.
Types
Class CL_STACK_ENGINE_BRF has no local type.
Method Signatures
Method ADD_MESSAGE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
FIELDNAME | Call by reference | Type reference (TYPE) | SCRFNAME | Name eines Dynproelementes | 20020522 | ||
2 | ![]() |
IO_EVENT | Call by reference | Object reference (TYPE REF TO) | IF_EVENT_BRF | BRF: Ereignis | 20020522 | ||
3 | ![]() |
IV_SIMULATION | Call by reference | Type reference (TYPE) | BRF_BOOLE_D | SPACE | BRF: Simulation/Syntax-Check | 20020522 | |
4 | ![]() |
LINE | Call by reference | Type reference (TYPE) | SYTABIX | Interne Tabellen, aktueller Zeilenindex | 20020522 | ||
5 | ![]() |
MSGID | Call by reference | Type reference (TYPE) | SYMSGID | SY-MSGID | Nachrichten, Nachrichtenklasse | 20020522 | |
6 | ![]() |
MSGNR | Call by reference | Type reference (TYPE) | SYMSGNO | SY-MSGNO | Nachrichten, Nachrichtennummer | 20020522 | |
7 | ![]() |
MSGTY | Call by reference | Type reference (TYPE) | SYMSGTY | SY-MSGTY | Nachrichten, Nachrichtentyp | 20020522 | |
8 | ![]() |
MSGV1 | Call by reference | Type reference (TYPE) | ANY | SY-MSGV1 | Nachrichten, Nachrichtenvariable | 20020522 | |
9 | ![]() |
MSGV2 | Call by reference | Type reference (TYPE) | ANY | SY-MSGV2 | Nachrichten, Nachrichtenvariable | 20020522 | |
10 | ![]() |
MSGV3 | Call by reference | Type reference (TYPE) | ANY | SY-MSGV3 | Nachrichten, Nachrichtenvariable | 20020522 | |
11 | ![]() |
MSGV4 | Call by reference | Type reference (TYPE) | ANY | SY-MSGV4 | Nachrichten, Nachrichtenvariable | 20020522 |
Method ADD_MESSAGE on class CL_STACK_ENGINE_BRF has no exception.
Method CALC_DATE_DIFFERENCE Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EV_RESULT | Call by reference | Type reference (TYPE) | F | Differenz | 20020522 | ||
2 | ![]() |
IV_DATE1 | Call by reference | Type reference (TYPE) | SYDATUM | Datum und Zeit, aktuelles (Applikationsserver-)Datum | 20020522 | ||
3 | ![]() |
IV_DATE2 | Call by reference | Type reference (TYPE) | SYDATUM | Datum und Zeit, aktuelles (Applikationsserver-)Datum | 20020522 | ||
4 | ![]() |
IV_RESULT_UNIT | Value transfer | Type reference (TYPE) | C | 'D' | Differenz in Tagen(D), Wochen (W) etc. | 20020522 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Überlauf | 20020522 |
Method CALC_FORMULA Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
CT_BRF200 | Call by reference | Type reference (TYPE) | TBRF200_T | BRF: Verwendungsnachweis - Tabellentyp | 20030507 | ||
2 | ![]() |
CT_OP_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK_T | BRF: Stack-Struktur für Formelinterpreter - Tabellentyp | 20020522 | ||
3 | ![]() |
CT_VAR_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK_T | BRF: Stack-Struktur für Formelinterpreter - Tabellentyp | 20020522 | ||
4 | ![]() |
ES_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK | BRF: Stack-Struktur für Formelinterpreter | 20020522 | ||
5 | ![]() |
IO_EVENT | Call by reference | Object reference (TYPE REF TO) | IF_EVENT_BRF | BRF: Ereignis | 20020522 | ||
6 | ![]() |
IO_EXPRESSION | Call by reference | Object reference (TYPE REF TO) | CL_EXPRESSION_BASE_BRF | BRF: Basisklasse Ausdrücke | 20020522 | ||
7 | ![]() |
IS_BRF150 | Call by reference | Type reference (TYPE) | SBRF150 | BRF: Dynprostruktur für Ausdrücke | 20020522 | ||
8 | ![]() |
IT_TOKENS | Call by reference | Type reference (TYPE) | BRF_TOKEN_T | BRF: Tokentabelle für Stack-Maschine | 20020522 | ||
9 | ![]() |
IV_SIMULATION | Call by reference | Type reference (TYPE) | BRF_BOOLE_D | SPACE | BRF: Simulation/Syntax-Check | 20020522 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Fehler aufgetreten | 20020905 |
Method CALC_STACK_OPERATION Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
CT_BRF200 | Call by reference | Type reference (TYPE) | TBRF200_T | BRF: Verwendungsnachweis - Tabellentyp | 20030507 | ||
2 | ![]() |
CT_VAR_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK_T | BRF: Stack-Struktur für Formelinterpreter - Tabellentyp | 20020522 | ||
3 | ![]() |
IO_EVENT | Call by reference | Object reference (TYPE REF TO) | IF_EVENT_BRF | BRF: Ereignis | 20020522 | ||
4 | ![]() |
IO_EXPRESSION | Call by reference | Object reference (TYPE REF TO) | IF_EXPRESSION_BRF | BRF: Ausdruck | 20020522 | ||
5 | ![]() |
IS_BRF150 | Call by reference | Type reference (TYPE) | SBRF150 | BRF: Dynprostruktur für Ausdrücke | 20020522 | ||
6 | ![]() |
IS_OPERATION | Call by reference | Type reference (TYPE) | BRF_CALC_STACK | BRF: Stack-Struktur für Formelinterpreter | 20020522 | ||
7 | ![]() |
IV_SIMULATION | Call by reference | Type reference (TYPE) | BRF_BOOLE_D | SPACE | BRF: Simulation/Syntax-Check | 20020522 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Fehler aufgetreten | 20020905 |
Method CALC_STACK_PUSH Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
CT_BRF200 | Call by reference | Type reference (TYPE) | TBRF200_T | BRF: Verwendungsnachweis - Tabellentyp | 20030507 | ||
2 | ![]() |
CT_OP_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK_T | BRF: Stack-Struktur für Formelinterpreter - Tabellentyp | 20020522 | ||
3 | ![]() |
CT_VAR_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK_T | BRF: Stack-Struktur für Formelinterpreter - Tabellentyp | 20020522 | ||
4 | ![]() |
IO_EVENT | Call by reference | Object reference (TYPE REF TO) | IF_EVENT_BRF | BRF: Ereignis | 20020522 | ||
5 | ![]() |
IO_EXPRESSION | Call by reference | Object reference (TYPE REF TO) | IF_EXPRESSION_BRF | BRF: Ausdruck | 20020522 | ||
6 | ![]() |
IS_BRF150 | Call by reference | Type reference (TYPE) | SBRF150 | BRF: Dynprostruktur für Ausdrücke | 20020522 | ||
7 | ![]() |
IS_TOKEN | Value transfer | Type reference (TYPE) | BRF_CALC_STACK | BRF: Stack-Struktur für Formelinterpreter | 20020522 | ||
8 | ![]() |
IV_SIMULATION | Call by reference | Type reference (TYPE) | BRF_BOOLE_D | SPACE | BRF: Simulation/Syntax-Check | 20020522 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Fehler aufgetreten | 20020905 |
Method CLASS_CONSTRUCTOR Signature
Method CLASS_CONSTRUCTOR on class CL_STACK_ENGINE_BRF has no parameter.
Method CLASS_CONSTRUCTOR on class CL_STACK_ENGINE_BRF has no exception.
Method DETERMINE_DECIMALS Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
CV_VALUE | Call by reference | Type reference (TYPE) | BRF_RESULT_VALUE | BRF: Ergebnis | 20020522 | ||
2 | ![]() |
EV_DECIMALS | Call by reference | Type reference (TYPE) | I | BRF: Nachkommastellen für Typ P | 20020522 |
Method DETERMINE_DECIMALS on class CL_STACK_ENGINE_BRF has no exception.
Method DETERMINE_TYPE_LENGTH Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
EV_LENGTH | Call by reference | Type reference (TYPE) | I | BRF: Feldlänge/Strukturlänge | 20020522 | ||
2 | ![]() |
IV_TYPE | Call by reference | Type reference (TYPE) | BRF_RESULT_TYPE | BRF: Ergebnistyp | 20020522 | ||
3 | ![]() |
IV_VALUE | Call by reference | Type reference (TYPE) | BRF_RESULT_VALUE | BRF: Ergebnis | 20020522 |
Method DETERMINE_TYPE_LENGTH on class CL_STACK_ENGINE_BRF has no exception.
Method GET_LINE_BRF190 Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
ES_BRF190 | Call by reference | Type reference (TYPE) | TBRF190 | BRF: Operatoren | 20020522 | ||
2 | ![]() |
IV_OPERATOR | Call by reference | Type reference (TYPE) | BRF_OPERATOR | BRF: Operator allgemein | 20020522 | ||
3 | ![]() |
IV_OP_UNARY | Call by reference | Type reference (TYPE) | BRF_OPERATOR_UNARY | SPACE | BRF: Unärer Operator | 20020522 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Nichts gefunden | 20020522 |
Method GET_LINE_BRF192 Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
ES_BRF192 | Call by reference | Type reference (TYPE) | TBRF192 | BRF: Operatoren und Ergebnistypen - Nachfolge TBRF191 | 20030605 | ||
2 | ![]() |
IV_OPERAND1 | Call by reference | Type reference (TYPE) | BRF_RESULT_TYPE | BRF: Ergebnistyp | 20030605 | ||
3 | ![]() |
IV_OPERAND2 | Call by reference | Type reference (TYPE) | BRF_RESULT_TYPE | BRF: Ergebnistyp | 20030605 | ||
4 | ![]() |
IV_OPERATOR | Call by reference | Type reference (TYPE) | BRF_OPERATOR | BRF: Operator allgemein | 20030605 | ||
5 | ![]() |
IV_OP_UNARY | Call by reference | Type reference (TYPE) | BRF_OPERATOR_UNARY | SPACE | BRF: Unärer Operator | 20030605 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Nichts gefunden | 20030605 |
Method PREPARE_PARAMETER Signature
# | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
---|---|---|---|---|---|---|---|---|---|
1 | ![]() |
CT_BRF200 | Call by reference | Type reference (TYPE) | TBRF200_T | BRF: Verwendungsnachweis - Tabellentyp | 20041120 | ||
2 | ![]() |
CT_VAR_STACK | Call by reference | Type reference (TYPE) | BRF_CALC_STACK_T | BRF: Stack-Struktur für Formelinterpreter - Tabellentyp | 20041120 | ||
3 | ![]() |
ES_VAR | Call by reference | Type reference (TYPE) | BRF_CALC_STACK | BRF: Stack-Struktur für Formelinterpreter | 20041120 | ||
4 | ![]() |
EV_FUNCTION_END | Call by reference | Type reference (TYPE) | BRF_BOOLE_D | BRF: space = false, 'X' = true | 20041120 | ||
5 | ![]() |
IO_EVENT | Call by reference | Object reference (TYPE REF TO) | IF_EVENT_BRF | BRF: Ereignis | 20041120 | ||
6 | ![]() |
IO_EXPRESSION | Call by reference | Object reference (TYPE REF TO) | IF_EXPRESSION_BRF | BRF: Ausdruck | 20041120 | ||
7 | ![]() |
IS_BRF150 | Call by reference | Type reference (TYPE) | SBRF150 | BRF: Dynprostruktur für Ausdrücke | 20041120 | ||
8 | ![]() |
IV_SIMULATION | Call by reference | Type reference (TYPE) | BRF_BOOLE_D | SPACE | BRF: space = false, 'X' = true | 20041120 |
# | Exception | Resumable | Description | Created on |
---|---|---|---|---|
1 | ![]() |
Fehler aufgetreten | 20041120 |
History
Last changed by/on | SAP | 20110908 |
SAP Release Created in | 471 |