SAP ABAP Class CL_RSDRS_HDB_SQL_STMT (Generate a MaxDB SQL Statement)
Hierarchy
SAP_BW (Software Component) SAP Business Warehouse
   BW-SYS-DB-SDB (Application Component) BW MaxDB
     RSHDB (Package) BW Porting HDB
Meta Relationship - Using
# Relationship type Using Short Description Created on
1 Interface implementation (CLASS c. INTERFACES i_ref)  IF_RSDRS_SQL_STMT Data Manager SQL Statement 20100622
Properties
Class CL_RSDRS_HDB_SQL_STMT  
Short Description Generate a MaxDB SQL Statement    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package RSHDB   BW Porting HDB 
Created 20100622   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 RSD Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
3 RSDRS Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
# Interface Abstract Final Description Created on
1 IF_RSDRS_SQL_STMT Data Manager SQL Statement 20100622
Friends
# Friend Modeled only Created on Description
1 CL_RSDRS_HDB_EXITS 20100622 Database dependent exits for MaxDB
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 P_ACCESSCNT Instance attribute Private Type reference (TYPE) I number of accesses 20110511
2 P_DMUID Instance attribute Private Type reference (TYPE) SYSUUID_25 UUID in Compressed Form 20110511
3 P_FACTVIEW Instance attribute Private Type reference (TYPE) RSD_TABLNM View of union all Table 20100622
4 P_HIER_FACTOR Instance attribute Private Type reference (TYPE) STRING correction factor for unambiguous hierarchies 20100622
5 P_INNER_GROUPBY Instance attribute Private Type reference (TYPE) RS_BOOL RS_C_TRUE Group by in inner SQL statement (if factview used) 20100622
6 P_PACKSIZE Instance attribute Private Type reference (TYPE) I 0 Paketgröße für Delete 20110726
7 P_R_EXIT_OBJ Instance attribute Private Object reference (TYPE REF TO) CL_RSDRS_HDB_EXITS Reference to Database specific exits 20100622
8 P_SRV_OBJ Instance attribute Private Object reference (TYPE REF TO) CL_RSDRS_STMT_SRVS Service Object for Statement Creation 20100622
9 P_SX_QUERY Instance attribute Private Type reference (TYPE) RSDRS_SX_QUERY query definition 20100622
10 P_TH_COB_PRO Instance attribute Private Type reference (TYPE) RSDRS_TH_COB_PRO COB PRO information of sx_query 20100622
11 P_T_CODE Instance attribute Private Type reference (TYPE) RSDRS_T_ABAPSOURCE Generated Code 20100622
Methods
# Method Level Visibility Method type Description Created on
1 BUILD_CHA_SELECT Instance method Private Method Build an entry of char. and nav. attr. part of select list 20100622
2 BUILD_DELETE_HEADER Instance method Private Method For db_delete build delete header 20100622
3 BUILD_FACTVIEW_HAVING Instance method Private Method Build starting select list for factview 20100622
4 BUILD_FACTVIEW_ORDERBY Instance method Private Method Build the final orderby clause for the factview 20100622
5 BUILD_FACTVIEW_SELECT Instance method Private Method Build starting select list for factview 20100622
6 BUILD_FORMULA Instance method Private Method Build Select List Entry for a Key Figure 20100622
7 BUILD_FROM_JOINS Instance method Private Method Build the from list with join conditions (ANSI Notation) 20100622
8 BUILD_GROUPBY_LIST Instance method Private Method Build group by part of statement 20100622
9 BUILD_HAVING_LIST Instance method Private Method Build the have list (not used currently) 20100622
10 BUILD_HINT Instance method Protected Method build hint for SQL stmt 20100622
11 BUILD_INSERT_HEADER Instance method Private Method For db_insert or db_create build insert list, drop indexes 20100622
12 BUILD_KYF_SELECT Instance method Private Method Build Select List Entry for a Key Figure 20100622
13 BUILD_ORDERBY Instance method Private Method build order by list 20100622
14 BUILD_OUTER Instance method Private Method build a single outer join condition 20100622
15 BUILD_SUBQUERY Instance method Private Method build a subquery. Subqueries may occur within where cond. 20100622
16 BUILD_SUBQUERY_FOR_DELETE Instance method Private Method subquery for delete 20100622
17 BUILD_TOP_SELECT Instance method Private Method Erzeuge Select Liste für Top N Query 20100622
18 BUILD_TOP_WHERE Instance method Private Method Erzeuge WHERE Clause fuer Top N Query 20100622
19 BUILD_WHERE_LIST Instance method Private Method Build the where list (without the join part) 20100622
20 CHECK_EXCLUSIVE_ONLY_CONDITION Instance method Private Method Is there an 'always-true' condition, because of excl.-only 20121004
21 CONSTRUCTOR Instance method Public Constructor Class constructor 20100622
22 DET_HIER_FACTOR Instance method Private Method Determine the correction factor for unambiguous hierarchies 20100622
23 FIND_FACTVIEW Instance method Private Method Changes the factview into two union all connected star joins 20100622
24 GET_STARTTAB Instance method Private Method Get starting table for join conditions 20100622
25 PROCESS_FACTVIEW Instance method Private Method Changes the factview into two union all connected star joins 20100622
26 PROCESS_TOPQUERY Instance method Private Method Processes Top/Bottom Query 20100622
27 PROCESS_TOPQUERY_ABAP Instance method Private Method ABAP Prozessierung der Top n Query 20100622
28 PROCESS_TOPQUERY_DB Instance method Private Method DB Prozessierung der Top n Query 20100622
29 SPLIT_HEADER Instance method Private Method Splits statement into header and select stmt 20100622
30 WRITE_JOIN Instance method Private Method recurse over from list and join tables together 20100622
31 WRITE_TABLE Instance method Private Method write a table entry of the from list 20100622
Events
Class CL_RSDRS_HDB_SQL_STMT has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 RSADA_T_DDFIELD Private See coding 20100622 RSADA_T_DDFIELD TYPE TABLE OF ddfield
Method Signatures

Method BUILD_CHA_SELECT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_SEPARATOR Call by reference Type reference (TYPE) RSDRS_SEP Separator between list elements 20100622
2 Importing I_S_CHA Call by reference Type reference (TYPE) RSDRS_S_CHA actual characteristic to build entry for 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_DELETE_HEADER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_TRANS_DEL Call by reference Type reference (TYPE) RS_BOOL RS_C_TRUE Boolean 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_FACTVIEW_HAVING Signature

Method BUILD_FACTVIEW_HAVING on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_FACTVIEW_ORDERBY Signature

Method BUILD_FACTVIEW_ORDERBY on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_FACTVIEW_SELECT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning R_GROUPBY Value transfer Type reference (TYPE) RS_BOOL Boolean 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_FORMULA 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) RSDRS_S_KYF-FORMULA Formula 20100622
2 Importing I_T_FORM_FLD Call by reference Type reference (TYPE) RSDRS_T_FORM_FLD Factor for Unambiguous Hierarchies 20100622
3 Returning R_FORMULA Value transfer Type reference (TYPE) STRING Resolved Formula 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_FROM_JOINS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_TH_JOIN Call by reference Type reference (TYPE) RSDRS_TH_JOIN List of inner join conditions 20100622
2 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE Table List 20100622
3 Importing I_TX_LEFTOUTER Call by reference Type reference (TYPE) RSDRS_TX_LEFTOUTER list of left outer joins 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_GROUPBY_LIST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_T_GROUPBY Call by reference Type reference (TYPE) RSDRS_T_GROUPBY Group by 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_HAVING_LIST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_T_HAVING Call by reference Type reference (TYPE) RSDRS_T_HAVING Having list 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_HINT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting E_HINT Call by reference Type reference (TYPE) RS_CHAR255 Final hints ... 20100622
2 Importing I_INFOPROV Call by reference Type reference (TYPE) RSINFOPROV InfoProvider 20120625
3 Importing I_OPEN_SQL Call by reference Type reference (TYPE) RS_BOOL Boolean 20100622
4 Importing I_T_HINT Call by reference Type reference (TYPE) RSDRS_T_ABAPSOURCE Hints from Statement (if set ...) 20100622

Method BUILD_HINT on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method BUILD_INSERT_HEADER Signature

Method BUILD_INSERT_HEADER on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_KYF_SELECT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_HIER_FACTOR Call by reference Type reference (TYPE) STRING Factor for Unambiguous Hierarchies 20100622
2 Importing I_SEPARATOR Call by reference Type reference (TYPE) RSDRS_SEP Separator for select list 20100622
3 Importing I_S_KYF Call by reference Type reference (TYPE) RSDRS_S_KYF key figure description 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_ORDERBY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_T_ORDERBY Call by reference Type reference (TYPE) RSDRS_T_ORDERBY order by list 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_OUTER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing C_TH_TBLS_JOINED Call by reference Type reference (TYPE) RSDRS_TH_TABLE Tables already joined 20100622
2 Importing I_SX_LEFTOUTER Call by reference Type reference (TYPE) RSDRS_SX_LEFTOUTER left outer condition to build 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_SUBQUERY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_SUBQUERY_ID Call by reference Type reference (TYPE) RSDRS_SUBQUERY_ID Subquery ID of actual subquery 20100622
2 Importing I_SX_SUBQUERY Call by reference Type reference (TYPE) RSDRS_SX_SUBQUERY Subquery description 20100622
3 Importing I_S_WHERE Call by reference Type reference (TYPE) RSDRS_S_WHERE Surrounding where statement 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method BUILD_SUBQUERY_FOR_DELETE Signature

Method BUILD_SUBQUERY_FOR_DELETE on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_TOP_SELECT Signature

Method BUILD_TOP_SELECT on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_TOP_WHERE Signature

Method BUILD_TOP_WHERE on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method BUILD_WHERE_LIST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_SUBQUERY_ID Call by reference Type reference (TYPE) RSDRS_SUBQUERY_ID ID of actual subquery 20100622
2 Importing I_TRANS_DEL Call by reference Type reference (TYPE) RS_BOOL RS_C_TRUE Boolean 20100622
3 Importing I_T_WHERE Call by reference Type reference (TYPE) RSDRS_T_WHERE Where List 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method CHECK_EXCLUSIVE_ONLY_CONDITION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing C_T_WHERE Call by reference Type reference (TYPE) RSDRS_T_WHERE 20121004
2 Exporting E_EXCLUDING_ONLY_FOUND Call by reference Type reference (TYPE) RS_BOOL Boolean 20121004
3 Exporting E_NOT_LEVEL Call by reference Type reference (TYPE) RSDRS_S_WHERE-LEVEL 20121005
4 Importing I_S_WHERE Call by reference Type reference (TYPE) RSDRS_S_WHERE 20121004
5 Importing I_TABIX Value transfer Type reference (TYPE) SY-TABIX Index of Internal Tables 20121004

Method CHECK_EXCLUSIVE_ONLY_CONDITION on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method CONSTRUCTOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_SX_QUERY Call by reference Type reference (TYPE) RSDRS_SX_QUERY Query description 20100622

Method CONSTRUCTOR on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method DET_HIER_FACTOR Signature

Method DET_HIER_FACTOR on class CL_RSDRS_HDB_SQL_STMT has no parameter.
Method DET_HIER_FACTOR on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method FIND_FACTVIEW Signature

Method FIND_FACTVIEW on class CL_RSDRS_HDB_SQL_STMT has no parameter.
Method FIND_FACTVIEW on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method GET_STARTTAB Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning E_STARTTAB Value transfer Type reference (TYPE) RSDRS_ALIAS Starting table 20100622
2 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE Table list to find starttab in 20100622

Method GET_STARTTAB on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method PROCESS_FACTVIEW Signature

Method PROCESS_FACTVIEW on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method PROCESS_TOPQUERY Signature

Method PROCESS_TOPQUERY on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method PROCESS_TOPQUERY_ABAP Signature

Method PROCESS_TOPQUERY_ABAP on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method PROCESS_TOPQUERY_DB Signature

Method PROCESS_TOPQUERY_DB on class CL_RSDRS_HDB_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20100622

Method SPLIT_HEADER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing C_T_CODE Call by reference Type reference (TYPE) RSDRS_T_ABAPSOURCE 20100622
2 Exporting E_T_HEADER Call by reference Type reference (TYPE) RSDRS_T_ABAPSOURCE 20100622

Method SPLIT_HEADER on class CL_RSDRS_HDB_SQL_STMT has no exception.

Method WRITE_JOIN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing C_TH_TBLS_JOINED Call by reference Type reference (TYPE) RSDRS_TH_TABLE Tables that have already been joined 20100622
2 Changing C_TS_JOIN Call by reference Type reference (TYPE) RSDRS_TS_JOIN Join list to work on 20100622
3 Importing I_STARTTAB Call by reference Type reference (TYPE) RSDRS_ALIAS Table to start with 20100622
4 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE List of Tables 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622

Method WRITE_TABLE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing C_TH_TBLS_JOINED Call by reference Type reference (TYPE) RSDRS_TH_TABLE tables already joined 20100622
2 Importing I_TABALIAS Call by reference Type reference (TYPE) RSDRS_ALIAS alias of table to write 20100622
3 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE list of tables 20100622
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL Statement Is Too Large 20100622
History
Last changed by/on SAP  20130531 
SAP Release Created in 730