SAP ABAP Class CL_RSDRS_FORMULA_TREE (Tree with key figure formulas)
Hierarchy
SAP_BW (Software Component) SAP Business Warehouse
   BW-BEX-OT (Application Component) OLAP Technology
     RSDRS (Package) Data Manager SQL Interface
Properties
Class CL_RSDRS_FORMULA_TREE  
Short Description Tree with key figure formulas    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package RSDRS   Data Manager SQL Interface 
Created 20031204   SAP 
Last change 20130531   SAP 
Shared Memory-enabled    
Fixed point arithmetic    
Unicode checks active    
Forward declarations
# Type group / Object type Type Type Description
1 RS Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
2 RSDRS Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
Class CL_RSDRS_FORMULA_TREE has no interface implemented.
Friends
Class CL_RSDRS_FORMULA_TREE has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 N_ACT_ELEMENT Instance attribute Public Type reference (TYPE) I 0 last element inserted 20031204
2 N_C_FIELDNM Constant Public Type reference (TYPE) STRING 'FLD' Field identifier 20031208
3 N_C_FIELDNM_LEN Constant Public Type reference (TYPE) I 8 Total length of fieldname References 20031210
4 N_TH_FORMULA Instance attribute Public Type reference (TYPE) TN_TH_FORMULA binary tree with formula 20031204
5 O_COUNTER Instance attribute Protected Type reference (TYPE) I 1 number of first unused element 20031204
6 P_FIELD_COUNTER Instance attribute Private Type reference (TYPE) I 1 first unused field for formula output 20031208
7 P_FORMULA Instance attribute Private Type reference (TYPE) STRING Formula String 20031208
8 P_PARENTHESIS Instance attribute Private Type reference (TYPE) RS_BOOL Make parenthesises around all operators ? 20031209
9 P_T_FIELD Instance attribute Private Type reference (TYPE) RSDRS_T_FORM_FLD Field Table for Formula 20031208
Methods
# Method Level Visibility Method type Description Created on
1 ADD_AGGR Instance method Public Method add a aggregation (SUM / MIN / MAX ) 20031208
2 ADD_FIELD Instance method Public Method add a new field to the tree below the actual element 20031204
3 ADD_OPERATOR Instance method Public Method add a new operator above the given element 20031204
4 ADD_OPERATOR_LEVEL Instance method Private Method add new op to the right of the formula considering levels .. 20031208
5 BUILD_FORMULA Instance method Public Method Build a formula string plus field tablefrom the tree 20031210
6 BUILD_TREE Static method Public Method Build a tree object from formula string with attached fields 20031210
7 CHANGE_AGGR Instance method Public Method Exchange the aggregation of actual element 20031208
8 CHANGE_FIELD Instance method Public Method Exchange the field of actual element 20031204
9 CHANGE_OPERATOR Instance method Public Method Exchange the operator of actual element (does not move it) 20031204
10 DET_OPERATOR_PRECEDENCE Static method Private Method determines the precedence of a booloean operator 20031204
11 DROP_BRANCH Instance method Public Method drops the complete branch starting with the actual element 20031204
12 DROP_NODE Instance method Public Method drops the actual element. It must only contain one child !! 20031204
13 GET_FIELD_ID Static method Public Method Returns correct string for field descriptor for add_formula 20031208
14 GET_FORMULA Instance method Private Method Build a formula string plus field tablefrom the tree 20031210
15 GET_ROOT Instance method Public Method Returns the root element 20031204
Events
Class CL_RSDRS_FORMULA_TREE has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 TN_S_FORMULA Public See coding Element of formula tree 20031210 BEGIN OF tn_s_formula, key_id TYPE i, parent TYPE i, left TYPE i, right TYPE i, operator TYPE rsdrs_operator, aggr TYPE rsaggrgen, field TYPE rsdrs_s_form_fld, level TYPE i, " internal use only END OF tn_s_formula
2 TN_TH_FORMULA Public See coding Formula Tree type 20031210 tn_th_formula TYPE HASHED TABLE OF tn_s_formula WITH UNIQUE KEY key_id INITIAL SIZE 0
Method Signatures

Method ADD_AGGR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element where to insert the boolop at 20031208
2 Importing I_AGGR Call by reference Type reference (TYPE) RSAGGRGEN Aggregation 20031208
3 Importing I_LEFT Value transfer Type reference (TYPE) RS_BOOL RS_C_FALSE Insert as left child (Only for emergency cases !!!) 20031208
4 Importing I_LEVEL Call by reference Type reference (TYPE) I Level of new aggregation 20031208
5 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031208

Method ADD_AGGR on class CL_RSDRS_FORMULA_TREE has no exception.

Method ADD_FIELD Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element where to insert the boolop at 20031204
2 Importing I_LEFT Value transfer Type reference (TYPE) RS_BOOL RS_C_FALSE Insert as left child (Only for emergency cases !!!) 20031204
3 Importing I_LEVEL Call by reference Type reference (TYPE) I Level of new field 20031208
4 Importing I_S_FIELD Call by reference Type reference (TYPE) RSDRS_S_FORM_FLD Formula field 20031204
5 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031204

Method ADD_FIELD on class CL_RSDRS_FORMULA_TREE has no exception.

Method ADD_OPERATOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element where to insert the boolop at 20031204
2 Importing I_LEVEL Call by reference Type reference (TYPE) I Level of operator 20031208
3 Importing I_OPERATOR Call by reference Type reference (TYPE) RSDRS_OPERATOR operator (+,-,*,/) 20031204
4 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031204

Method ADD_OPERATOR on class CL_RSDRS_FORMULA_TREE has no exception.

Method ADD_OPERATOR_LEVEL Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_LEVEL Call by reference Type reference (TYPE) I Level of operator 20031208
2 Importing I_OPERATOR Call by reference Type reference (TYPE) RSDRS_OPERATOR operator (+,-,*,/) 20031208
3 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031208

Method ADD_OPERATOR_LEVEL on class CL_RSDRS_FORMULA_TREE has no exception.

Method BUILD_FORMULA Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting E_FORMULA Call by reference Type reference (TYPE) STRING Formula String 20031210
2 Exporting E_T_FIELD Call by reference Type reference (TYPE) RSDRS_T_FORM_FLD Table with field information 20031210
3 Importing I_PARENTHESIS Value transfer Type reference (TYPE) RS_BOOL RS_C_FALSE make parentheses around all ops 20031210

Method BUILD_FORMULA on class CL_RSDRS_FORMULA_TREE has no exception.

Method BUILD_TREE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_FORMULA Call by reference Type reference (TYPE) STRING Formula 20031210
2 Importing I_T_FIELDS Call by reference Type reference (TYPE) RSDRS_T_FORM_FLD Table with fields used in Formula 20031210
3 Returning R_R_FORMULA Value transfer Object reference (TYPE REF TO) CL_RSDRS_FORMULA_TREE Tree with key figure formulas 20031210

Method BUILD_TREE on class CL_RSDRS_FORMULA_TREE has no exception.

Method CHANGE_AGGR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element where to insert the boolop at 20031208
2 Importing I_AGGR Call by reference Type reference (TYPE) RSAGGRGEN New type of Aggregation 20031208
3 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031208

Method CHANGE_AGGR on class CL_RSDRS_FORMULA_TREE has no exception.

Method CHANGE_FIELD Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element where to insert the boolop at 20031204
2 Importing I_S_FIELD Call by reference Type reference (TYPE) RSDRS_S_FORM_FLD Formula field 20031204
3 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031204

Method CHANGE_FIELD on class CL_RSDRS_FORMULA_TREE has no exception.

Method CHANGE_OPERATOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element where to insert the boolop at 20031204
2 Importing I_OPERATOR Call by reference Type reference (TYPE) RSDRS_OPERATOR operator (+,-,*,/) 20031204
3 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Inserted Element 20031204

Method CHANGE_OPERATOR on class CL_RSDRS_FORMULA_TREE has no exception.

Method DET_OPERATOR_PRECEDENCE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning E_PRECEDENCE Value transfer Type reference (TYPE) I precedence of operator 20031204
2 Importing I_OPERATOR Call by reference Type reference (TYPE) RSDRS_OPERATOR operator 20031204

Method DET_OPERATOR_PRECEDENCE on class CL_RSDRS_FORMULA_TREE has no exception.

Method DROP_BRANCH Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element to be dropped 20031204
2 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Parent of dropped branch 20031204

Method DROP_BRANCH on class CL_RSDRS_FORMULA_TREE has no exception.

Method DROP_NODE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Element to be dropped 20031204
2 Returning R_ACT_ELEMENT Value transfer Type reference (TYPE) I Parent of dropped element 20031204

Method DROP_NODE on class CL_RSDRS_FORMULA_TREE has no exception.

Method GET_FIELD_ID Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_INDEX Call by reference Type reference (TYPE) I Number of field 20031208
2 Returning R_FIELD Value transfer Type reference (TYPE) STRING Field descriptor 20031208

Method GET_FIELD_ID on class CL_RSDRS_FORMULA_TREE has no exception.

Method GET_FORMULA Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_ACT_ELEMENT Call by reference Type reference (TYPE) I Actual Element 20031210
2 Importing I_PARENT_OPERATOR Call by reference Type reference (TYPE) RSDRS_OPERATOR Operator of parent element 20031210

Method GET_FORMULA on class CL_RSDRS_FORMULA_TREE has no exception.

Method GET_ROOT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning R_ROOT_ELEMENT Value transfer Type reference (TYPE) I Root Element 20031204

Method GET_ROOT on class CL_RSDRS_FORMULA_TREE has no exception.
History
Last changed by/on SAP  20130531 
SAP Release Created in 400