Ansicht
Dokumentation
CACS_READ_DATA - NOTRANSL: Provision: Datenbeschaffung
Fill RESBD Structure from EBP Component Structure BAL_S_LOG - Application Log: Log header dataThis documentation is copyright by SAP AG.
This function module contains the SELECTION_TABLE table with selection conditions.
It gets the required data from the 'RKB1X-TABNAME' table/view and fills an internal table whose structure corresponds to the structure of 'RKB1X-TABNAME'. If 'I_RECHERCHE' contains an 'X', this data table is either transferred completely or in portions to the generated drilldown report S_PROGRAM_NAME in in the S_FORM_NAME routine. Otherwise the table is copied to E_CACS_EXTR_DATA. The I_BUILD_CONVEX_HULL parameter determines whether a superset of the selection conditions is to be created or not.
In extreme cases, the drilldown enables you to define your own selection for each cell in a row/column structure. In the SELECTION_TABLE, these individual selection cards are separated by the sequential number.
In more detail: The number zero has all conditions that refer to all cells, meaning those that were able to be excluded from the brackets. The following example describes how the SELECTION_TABLE needs to be changed into a select command.
SEQNO | FNAM | SIGN | OPTION | LOW | HIGH |
---|---|---|---|---|---|
000 | FELD1 | I | EQ | A1 | |
000 | FELD1 | I | BT | A2 | A3 |
000 | FELD2 | I | EQ | A4 | |
001 | FELD1 | I | EQ | A5 | |
001 | FELD3 | I | GT | A6 | |
001 | FELD3 | I | LT | A7 | |
002 | FELD4 | I | EQ | A8 | |
003 | FELD1 | I | BT | A9 | A10 |
SELECT * FROM xy WHERE |
( ( FELD1 EQ A1 OR FELD1 BETWEEN A2 AND A3 ) AND ( FELD2 EQ A4 ) ) |
AND ( ( ( FELD1 EQ A5 ) AND ( FELD3 GT A6 OR FELD3 LT A7 ) ) |
OR ( ( FELD4 EQ A8 ) ) OR ( ( FELD1 BETWEEN A9 AND A10 ) ) ) |
The rules for creating the SELECT statement are as follows:
- All rows with the same sequential number are part of one block.
- Block 0 and Block 1 must be 'AND (' all of the following blocks are linked with 'OR'. The last block with ')' closed. This equals: BLOCK0 AND ( BLOCK1 OR BLOCK2 OR BLOCK3 OR BLOCKn ).
- In a block the following applies: Fields with the same name are linked with 'OR', fields with different names with 'AND', the fields linked with 'OR' are bracketed: (F1 = 1 OR F1 = 3) AND F2 = 8
- If this exact selection is too time-consuming or cannot be read efficiently due to performance reasons, the larger "selection holder" can be read. This means that you start simpler "Select", e.g. by using select options. The S_FORM_NAME routine then filters the qualified records.
- The function module RKE_SELTAB_CONVEX_HULL from the KED4 group enables this increase.
Parameters
ADD_SEL_TABE_CACS_EXTR_DATA
I_AUTH_CHECK
I_BUILD_CONVEX_HULL
I_CORRESPONDING
I_OUTPUT_STRUCTURE
I_RECHERCHE
RKB1X
SELECTED_FIELDS
SELECTED_HIERAS
SELECTION_TABLE
S_FORM_NAME
S_PROGRAM_NAME
Exceptions
NO_RECORD_FOUNDFunction Group
CACSIS_SVendor Master (General Section) General Data in Customer Master
This documentation is copyright by SAP AG.
Length: 5277 Date: 20240603 Time: 215908 sap01-206 ( 69 ms )