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 MS_A Static Attribute Protected Type reference (TYPE) SBRF_STACK_REGISTER Register A 20041120
2 MS_B Static Attribute Protected Type reference (TYPE) SBRF_STACK_REGISTER Register B 20041120
3 MS_Y Static Attribute Protected Type reference (TYPE) SBRF_STACK_REGISTER Register Y 20041120
4 MT_BRF150 Static Attribute Protected Type reference (TYPE) TBRF150_T BRF: Expression 20020522
5 MT_BRF190 Static Attribute Protected Type reference (TYPE) TBRF190_T BRF: Operators - Table Category 20020522
6 MT_BRF192 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 ADD_MESSAGE Static method Private Method BRF: Forward Message 20020522
2 CALC_DATE_DIFFERENCE Static method Public Method Calculates Difference Between Date 1 and Date 2 20020522
3 CALC_FORMULA Static method Public Method Calculates Formula with Stack Engine 20020522
4 CALC_STACK_OPERATION Static method Public Method Executes Stated Operation on Operand Stack 20020522
5 CALC_STACK_PUSH Static method Public Method Token/Operand on Stack 20020522
6 CLASS_CONSTRUCTOR Static method Public Constructor CLASS_CONSTRUCTOR 20040809
7 DETERMINE_DECIMALS Static method Public Method Determines Decimal Places 20020522
8 DETERMINE_TYPE_LENGTH Static method Public Method Determines Correct Operand Length 20020522
9 GET_LINE_BRF190 Static method Private Method BRF: One Line from TBRF190 Acc. to Complete Key 20020522
10 GET_LINE_BRF192 Static method Private Method BRF: A Line from TBRF192 acc. to Complete Key 20030605
11 PREPARE_PARAMETER 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 Importing FIELDNAME Call by reference Type reference (TYPE) SCRFNAME Name eines Dynproelementes 20020522
2 Importing IO_EVENT Call by reference Object reference (TYPE REF TO) IF_EVENT_BRF BRF: Ereignis 20020522
3 Importing IV_SIMULATION Call by reference Type reference (TYPE) BRF_BOOLE_D SPACE BRF: Simulation/Syntax-Check 20020522
4 Importing LINE Call by reference Type reference (TYPE) SYTABIX Interne Tabellen, aktueller Zeilenindex 20020522
5 Importing MSGID Call by reference Type reference (TYPE) SYMSGID SY-MSGID Nachrichten, Nachrichtenklasse 20020522
6 Importing MSGNR Call by reference Type reference (TYPE) SYMSGNO SY-MSGNO Nachrichten, Nachrichtennummer 20020522
7 Importing MSGTY Call by reference Type reference (TYPE) SYMSGTY SY-MSGTY Nachrichten, Nachrichtentyp 20020522
8 Importing MSGV1 Call by reference Type reference (TYPE) ANY SY-MSGV1 Nachrichten, Nachrichtenvariable 20020522
9 Importing MSGV2 Call by reference Type reference (TYPE) ANY SY-MSGV2 Nachrichten, Nachrichtenvariable 20020522
10 Importing MSGV3 Call by reference Type reference (TYPE) ANY SY-MSGV3 Nachrichten, Nachrichtenvariable 20020522
11 Importing 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 Exporting EV_RESULT Call by reference Type reference (TYPE) F Differenz 20020522
2 Importing IV_DATE1 Call by reference Type reference (TYPE) SYDATUM Datum und Zeit, aktuelles (Applikationsserver-)Datum 20020522
3 Importing IV_DATE2 Call by reference Type reference (TYPE) SYDATUM Datum und Zeit, aktuelles (Applikationsserver-)Datum 20020522
4 Importing IV_RESULT_UNIT Value transfer Type reference (TYPE) C 'D' Differenz in Tagen(D), Wochen (W) etc. 20020522
# Exception Resumable Description Created on
1 CALCULATION_OVERFLOW Überlauf 20020522

Method CALC_FORMULA Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CT_BRF200 Call by reference Type reference (TYPE) TBRF200_T BRF: Verwendungsnachweis - Tabellentyp 20030507
2 Changing CT_OP_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK_T BRF: Stack-Struktur für Formelinterpreter - Tabellentyp 20020522
3 Changing CT_VAR_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK_T BRF: Stack-Struktur für Formelinterpreter - Tabellentyp 20020522
4 Exporting ES_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK BRF: Stack-Struktur für Formelinterpreter 20020522
5 Importing IO_EVENT Call by reference Object reference (TYPE REF TO) IF_EVENT_BRF BRF: Ereignis 20020522
6 Importing IO_EXPRESSION Call by reference Object reference (TYPE REF TO) CL_EXPRESSION_BASE_BRF BRF: Basisklasse Ausdrücke 20020522
7 Importing IS_BRF150 Call by reference Type reference (TYPE) SBRF150 BRF: Dynprostruktur für Ausdrücke 20020522
8 Importing IT_TOKENS Call by reference Type reference (TYPE) BRF_TOKEN_T BRF: Tokentabelle für Stack-Maschine 20020522
9 Importing IV_SIMULATION Call by reference Type reference (TYPE) BRF_BOOLE_D SPACE BRF: Simulation/Syntax-Check 20020522
# Exception Resumable Description Created on
1 ERROR_OCCURED Fehler aufgetreten 20020905

Method CALC_STACK_OPERATION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CT_BRF200 Call by reference Type reference (TYPE) TBRF200_T BRF: Verwendungsnachweis - Tabellentyp 20030507
2 Changing CT_VAR_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK_T BRF: Stack-Struktur für Formelinterpreter - Tabellentyp 20020522
3 Importing IO_EVENT Call by reference Object reference (TYPE REF TO) IF_EVENT_BRF BRF: Ereignis 20020522
4 Importing IO_EXPRESSION Call by reference Object reference (TYPE REF TO) IF_EXPRESSION_BRF BRF: Ausdruck 20020522
5 Importing IS_BRF150 Call by reference Type reference (TYPE) SBRF150 BRF: Dynprostruktur für Ausdrücke 20020522
6 Importing IS_OPERATION Call by reference Type reference (TYPE) BRF_CALC_STACK BRF: Stack-Struktur für Formelinterpreter 20020522
7 Importing IV_SIMULATION Call by reference Type reference (TYPE) BRF_BOOLE_D SPACE BRF: Simulation/Syntax-Check 20020522
# Exception Resumable Description Created on
1 ERROR_OCCURED Fehler aufgetreten 20020905

Method CALC_STACK_PUSH Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CT_BRF200 Call by reference Type reference (TYPE) TBRF200_T BRF: Verwendungsnachweis - Tabellentyp 20030507
2 Changing CT_OP_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK_T BRF: Stack-Struktur für Formelinterpreter - Tabellentyp 20020522
3 Changing CT_VAR_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK_T BRF: Stack-Struktur für Formelinterpreter - Tabellentyp 20020522
4 Importing IO_EVENT Call by reference Object reference (TYPE REF TO) IF_EVENT_BRF BRF: Ereignis 20020522
5 Importing IO_EXPRESSION Call by reference Object reference (TYPE REF TO) IF_EXPRESSION_BRF BRF: Ausdruck 20020522
6 Importing IS_BRF150 Call by reference Type reference (TYPE) SBRF150 BRF: Dynprostruktur für Ausdrücke 20020522
7 Importing IS_TOKEN Value transfer Type reference (TYPE) BRF_CALC_STACK BRF: Stack-Struktur für Formelinterpreter 20020522
8 Importing IV_SIMULATION Call by reference Type reference (TYPE) BRF_BOOLE_D SPACE BRF: Simulation/Syntax-Check 20020522
# Exception Resumable Description Created on
1 ERROR_OCCURED 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 Changing CV_VALUE Call by reference Type reference (TYPE) BRF_RESULT_VALUE BRF: Ergebnis 20020522
2 Exporting 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 Exporting EV_LENGTH Call by reference Type reference (TYPE) I BRF: Feldlänge/Strukturlänge 20020522
2 Importing IV_TYPE Call by reference Type reference (TYPE) BRF_RESULT_TYPE BRF: Ergebnistyp 20020522
3 Importing 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 Exporting ES_BRF190 Call by reference Type reference (TYPE) TBRF190 BRF: Operatoren 20020522
2 Importing IV_OPERATOR Call by reference Type reference (TYPE) BRF_OPERATOR BRF: Operator allgemein 20020522
3 Importing IV_OP_UNARY Call by reference Type reference (TYPE) BRF_OPERATOR_UNARY SPACE BRF: Unärer Operator 20020522
# Exception Resumable Description Created on
1 NOTHING_FOUND Nichts gefunden 20020522

Method GET_LINE_BRF192 Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ES_BRF192 Call by reference Type reference (TYPE) TBRF192 BRF: Operatoren und Ergebnistypen - Nachfolge TBRF191 20030605
2 Importing IV_OPERAND1 Call by reference Type reference (TYPE) BRF_RESULT_TYPE BRF: Ergebnistyp 20030605
3 Importing IV_OPERAND2 Call by reference Type reference (TYPE) BRF_RESULT_TYPE BRF: Ergebnistyp 20030605
4 Importing IV_OPERATOR Call by reference Type reference (TYPE) BRF_OPERATOR BRF: Operator allgemein 20030605
5 Importing IV_OP_UNARY Call by reference Type reference (TYPE) BRF_OPERATOR_UNARY SPACE BRF: Unärer Operator 20030605
# Exception Resumable Description Created on
1 NOTHING_FOUND Nichts gefunden 20030605

Method PREPARE_PARAMETER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CT_BRF200 Call by reference Type reference (TYPE) TBRF200_T BRF: Verwendungsnachweis - Tabellentyp 20041120
2 Changing CT_VAR_STACK Call by reference Type reference (TYPE) BRF_CALC_STACK_T BRF: Stack-Struktur für Formelinterpreter - Tabellentyp 20041120
3 Exporting ES_VAR Call by reference Type reference (TYPE) BRF_CALC_STACK BRF: Stack-Struktur für Formelinterpreter 20041120
4 Exporting EV_FUNCTION_END Call by reference Type reference (TYPE) BRF_BOOLE_D BRF: space = false, 'X' = true 20041120
5 Importing IO_EVENT Call by reference Object reference (TYPE REF TO) IF_EVENT_BRF BRF: Ereignis 20041120
6 Importing IO_EXPRESSION Call by reference Object reference (TYPE REF TO) IF_EXPRESSION_BRF BRF: Ausdruck 20041120
7 Importing IS_BRF150 Call by reference Type reference (TYPE) SBRF150 BRF: Dynprostruktur für Ausdrücke 20041120
8 Importing IV_SIMULATION Call by reference Type reference (TYPE) BRF_BOOLE_D SPACE BRF: space = false, 'X' = true 20041120
# Exception Resumable Description Created on
1 ERROR_OCCURED Fehler aufgetreten 20041120
History
Last changed by/on SAP  20110908 
SAP Release Created in 471