SAP ABAP Class CL_RSDRS_MSSQL_SQL_STMT (Generate an MS SQLServer SQL Statement)
Hierarchy
SAP_BW (Software Component) SAP Business Warehouse
   BW-SYS-DB-MSS (Application Component) BW Microsoft SQL Server
     RSMSS (Package) Microsoft SQL Server Porting
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 20040211
Properties
Class CL_RSDRS_MSSQL_SQL_STMT  
Short Description Generate an MS SQLServer SQL Statement    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package RSMSS   Microsoft SQL Server Porting 
Created 20040211   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
# Interface Abstract Final Description Created on
1 IF_RSDRS_SQL_STMT Data Manager SQL Statement 20040211
Friends
# Friend Modeled only Created on Description
1 CL_RSDRS_MSSQL_EXITS 20040211 Database dependent exits for MS SQLServer
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 P_DNAME Instance attribute Private Type reference (TYPE) MSSDB Database Name 20061127
2 P_FACTALIAS Instance attribute Private Type reference (TYPE) RSDRS_ALIAS 20060607
3 P_HIER_FACTOR Instance attribute Private Type reference (TYPE) STRING correction factor for unambiguous hierarchies 20040211
4 P_IS_KATMAI Instance attribute Private Type reference (TYPE) RS_BOOL MSS Rel >=10.0 20080229
5 P_IS_YUKON Instance attribute Private Type reference (TYPE) RS_BOOL MSS Rel >=9.0 20050726
6 P_PACKSIZE Instance attribute Private Type reference (TYPE) I 0 Package Size when Deleted 20050726
7 P_R_EXIT_OBJ Instance attribute Private Object reference (TYPE REF TO) CL_RSDRS_MSSQL_EXITS Reference to Database specific exits 20040211
8 P_SNAME Instance attribute Private Type reference (TYPE) MSSSCHEMA Structure name 20061127
9 P_SRV_OBJ Instance attribute Private Object reference (TYPE REF TO) CL_RSDRS_STMT_SRVS Service Object for Statement Creation 20040211
10 P_SX_QUERY Instance attribute Private Type reference (TYPE) RSDRS_SX_QUERY query definition 20040211
11 P_TH_COB_PRO Instance attribute Private Type reference (TYPE) RSDRS_TH_COB_PRO COB PRO information of sx_query 20040211
12 P_TH_PARTQUERY Instance attribute Private Type reference (TYPE) TP_TH_PARTQUERY Part query description for F4 subselects 20070827
13 P_T_CODE Instance attribute Private Type reference (TYPE) RSDRS_T_ABAPSOURCE Generated Code 20040211
14 P_T_JOINFIELDS Instance attribute Private Type reference (TYPE) PT_T_PKFIELDS Columns for Delete Join 20050726
Methods
# Method Level Visibility Method type Description Created on
1 ADD_PARTTIM_RESTRICTION Instance method Private Method Add partitioning condition for recordtp restriction 20060607
2 BUILD_CHA_SELECT Instance method Private Method build an entry of char. and nav. attr. part of select list 20040211
3 BUILD_DELETE_HEADER Instance method Private Method For db_delete build delete header 20050513
4 BUILD_DELETE_JOIN Instance method Private Method Build join condition for packet delete 20050726
5 BUILD_F4_SELECT Instance method Private Method Build starting select list for factview 20070827
6 BUILD_F4_UNIONS Instance method Private Method Changes or-ed subselects with in into union selects 20070827
7 BUILD_F4_WHERE Instance method Private Method Changes or-ed subselects with in into union selects 20070827
8 BUILD_FORMULA Instance method Private Method Build Select List Entry for a Key Figure 20080114
9 BUILD_FROM_JOINS Instance method Private Method Build the from list with join conditions (ANSI Notation) 20040211
10 BUILD_GROUPBY_LIST Instance method Private Method Build group by part of statement 20040211
11 BUILD_HAVING_LIST Instance method Private Method Build the have list (not used currently) 20040211
12 BUILD_HINT Instance method Protected Method build hint for SQL stmt 20040211
13 BUILD_INSERT_HEADER Instance method Private Method For db_insert or db_create build insert list, drop indexes 20040211
14 BUILD_KYF_SELECT Instance method Private Method Build Select List Entry for a Key Figure 20040211
15 BUILD_OPTION Instance method Private Method MSS specific add hash grouping 20080229
16 BUILD_ORDERBY Instance method Private Method build order by list 20040211
17 BUILD_OUTER Instance method Private Method build a single outer join condition 20040211
18 BUILD_SUBQUERY Instance method Private Method build a subquery. Subqueries may occur within where cond. 20040211
19 BUILD_TOPQUERY Instance method Private Method Processes the Top/Bottom N/SUM/PERCENT Query (>=Yukon) 20060208
20 BUILD_TOP_SELECT Instance method Private Method Build Starting Select List for Top Queries 20060208
21 BUILD_TOP_WHERE Instance method Private Method Build Filter Condition for Top Queries 20060208
22 BUILD_WHERE_LIST Instance method Private Method Build the where list (without the join part) 20040211
23 CHECK_F4_SUBSELECTS Instance method Private Method Changes the factview into two union all connected star joins 20070827
24 CONSTRUCTOR Instance method Public Constructor Class constructor 20040211
25 DET_DEL_PACKSIZE Instance method Private Method Determine packet size for selective delete 20050726
26 DET_HIER_FACTOR Instance method Private Method Determine the correction factor for unambiguous hierarchies 20040211
27 DET_JOIN_FIELDS Instance method Private Method Determine the list of fields for delete join 20050726
28 GET_STARTTAB Instance method Private Method Get starting table for join conditions 20040211
29 SPLIT_HEADER Instance method Private Method Splits statement into header and select stmt 20060208
30 WRITE_JOIN Instance method Private Method recurse over from list and join tables together 20040211
31 WRITE_TABLE Instance method Private Method write a table entry of the from list 20040211
Events
Class CL_RSDRS_MSSQL_SQL_STMT has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 TP_S_PARTQUERY Private See coding 20070827 BEGIN OF tp_s_partquery, id TYPE rsdrs_subquery_id, num TYPE i, END OF tp_s_partquery
2 TP_TH_PARTQUERY Private See coding 20070827 tp_th_partquery TYPE HASHED TABLE OF tp_s_partquery WITH UNIQUE KEY id
Method Signatures

Method ADD_PARTTIM_RESTRICTION Signature

Method ADD_PARTTIM_RESTRICTION on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
Method ADD_PARTTIM_RESTRICTION on class CL_RSDRS_MSSQL_SQL_STMT has no exception.

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 20040211
2 Importing I_S_CHA Call by reference Type reference (TYPE) RSDRS_S_CHA actual characteristic to build entry for 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

Method BUILD_DELETE_HEADER Signature

Method BUILD_DELETE_HEADER on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20050513

Method BUILD_DELETE_JOIN Signature

Method BUILD_DELETE_JOIN on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20050726

Method BUILD_F4_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 Groupby Needed ? 20070827
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20070827

Method BUILD_F4_UNIONS Signature

Method BUILD_F4_UNIONS on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20070827

Method BUILD_F4_WHERE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing I_T_SEL_CODE Call by reference Type reference (TYPE) RSDRS_T_ABAPSOURCE Common part of f4 innser selects 20070827
2 Returning R_T_CODE Value transfer Type reference (TYPE) RSDRS_T_ABAPSOURCE complete f4 inner statement 20070827
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20070827

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 20080114
2 Importing I_T_FORM_FLD Call by reference Type reference (TYPE) RSDRS_T_FORM_FLD factor for unambigous hierarchies 20080114
3 Returning R_FORMULA Value transfer Type reference (TYPE) STRING Resolved Formula 20080114
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20080114

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 20040211
2 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE Table List 20040211
3 Importing I_TX_LEFTOUTER Call by reference Type reference (TYPE) RSDRS_TX_LEFTOUTER list of left outer joins 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 Groupby 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 ... 20040211
2 Importing I_OPEN_SQL Call by reference Type reference (TYPE) RS_BOOL Boolean 20040211
3 Importing I_T_HINT Call by reference Type reference (TYPE) RSDRS_T_ABAPSOURCE Hints from Statement (if set ...) 20040211

Method BUILD_HINT on class CL_RSDRS_MSSQL_SQL_STMT has no exception.

Method BUILD_INSERT_HEADER Signature

Method BUILD_INSERT_HEADER on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 unambigous hierarchies 20040211
2 Importing I_SEPARATOR Call by reference Type reference (TYPE) RSDRS_SEP Separator for select list 20040211
3 Importing I_S_KYF Call by reference Type reference (TYPE) RSDRS_S_KYF key figure description 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

Method BUILD_OPTION Signature

Method BUILD_OPTION on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20080229

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 orderby list 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 20040211
2 Importing I_SX_LEFTOUTER Call by reference Type reference (TYPE) RSDRS_SX_LEFTOUTER left outer condition to build 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 20040211
2 Importing I_SX_SUBQUERY Call by reference Type reference (TYPE) RSDRS_SX_SUBQUERY Subquery description 20040211
3 Importing I_S_WHERE Call by reference Type reference (TYPE) RSDRS_S_WHERE Surrounding where statement 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

Method BUILD_TOPQUERY Signature

Method BUILD_TOPQUERY on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20060208

Method BUILD_TOP_SELECT Signature

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

Method BUILD_TOP_WHERE Signature

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

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 20040211
2 Importing I_T_WHERE Call by reference Type reference (TYPE) RSDRS_T_WHERE Where List 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

Method CHECK_F4_SUBSELECTS Signature

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

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 Quey description 20040211

Method CONSTRUCTOR on class CL_RSDRS_MSSQL_SQL_STMT has no exception.

Method DET_DEL_PACKSIZE Signature

Method DET_DEL_PACKSIZE on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
Method DET_DEL_PACKSIZE on class CL_RSDRS_MSSQL_SQL_STMT has no exception.

Method DET_HIER_FACTOR Signature

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

Method DET_JOIN_FIELDS Signature

Method DET_JOIN_FIELDS on class CL_RSDRS_MSSQL_SQL_STMT has no parameter.
Method DET_JOIN_FIELDS on class CL_RSDRS_MSSQL_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 20040211
2 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE Table list to find starttab in 20040211

Method GET_STARTTAB on class CL_RSDRS_MSSQL_SQL_STMT has no exception.

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 Statement without header 20060208
2 Exporting E_T_HEADER Call by reference Type reference (TYPE) RSDRS_T_ABAPSOURCE Header 20060208
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG Generated Stmt is too long ... 20060208

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 20040211
2 Changing C_TS_JOIN Call by reference Type reference (TYPE) RSDRS_TS_JOIN Join list to work on 20040211
3 Importing I_STARTTAB Call by reference Type reference (TYPE) RSDRS_ALIAS Table to start with 20040211
4 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE List of Tables 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211

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 20040211
2 Importing I_TABALIAS Call by reference Type reference (TYPE) RSDRS_ALIAS alias of table to write 20040211
3 Importing I_TH_TABLE Call by reference Type reference (TYPE) RSDRS_TH_TABLE list of tables 20040211
# Exception Resumable Description Created on
1 CX_RSDRS_STMT_TOO_LONG SQL-Statement ist zu groß 20040211
History
Last changed by/on SAP  20130531 
SAP Release Created in 400