RSDRI_INFOPROV_READ_RFC is a standard SAP function module available within R/3 SAP systems depending on your version and release level. Below is the pattern details for this FM showing its interface including any import and export parameters, exceptions etc as well as any documentation contributions (Comments) specific to the object.
See here to view full function module documentation and code listing, simply by entering the name RSDRI_INFOPROV_READ_RFC into the relevant SAP transaction such as SE37 or SE80.
Associated Function Group:
RSDRI
Released Date:
17.03.2008
Processing type: Remote-Enabled
CALL FUNCTION 'RSDRI_INFOPROV_READ_RFC' "BW Data Manager: General RFC Read Interface
EXPORTING
i_infoprov = " rsinfoprov Technical Name of InfoProvider
* i_reference_date = SY-DATUM " rsdri_refdate Key Date
* i_save_in_table = SPACE " rsdri_save_in_table Save Result in DB Table?
* i_tablename = " rsdri_tablename Name of the Results Table
* i_save_in_file = SPACE " rsdri_save_in_file Save Result in File?
* i_filename = " rsdri_filename Name of results file
* i_authority_check = RSDRC_C_AUTHCHK-READ " rsdri_authchk Perform Access Check - read/write/none?
* i_currency_conversion = 'X' " rsdr0_curr_conv Convert Currency Key Figures
* i_s_rfcmode = " rsdp0_s_rfcmode DM API: RFC Mode
* i_maxrows = 0 " i Stops After This Number of Records
* i_use_db_aggregation = RS_C_TRUE " rs_bool Aggregate Run on DB
* i_use_aggregates = RS_C_TRUE " rs_bool (Only InfoCubes): Should aggregates be used? yes/no
* i_rollup_only = RS_C_TRUE " rs_bool Cubes: Only read to roll-up? Ignored if i_t_requid is set
* i_read_ods_delta = RS_C_FALSE " rs_bool (Only ODS Objects): Should Data Be Read from the ODS Change Log?
* i_resulttype = SPACE " rsdri_resulttype Return to E_T_RFCDATA, E_T_RFCDATAV (V), E_RFCDATA_UC (U)
* i_debug = RS_C_FALSE " rs_bool Debugging mode on/off?
* i_t_range_string = " rsdri_t_range Boolean
IMPORTING
e_end_of_data = " rs_bool Last Data Package Yes/No
e_aggregate = " rsinfocube Last Aggregate Used
e_rfcdata_uc = " xstring Unicode-compatible coding for the result
e_split_occurred = " rsdr0_split_occurred Result may not be completely aggregated
e_stepuid = " sysuuid_25 UUID of the step in the query statistics
TABLES
i_t_sfc = " rsdri_t_sfc Characteristics That Are to Be Returned
i_t_sfk = " rsdri_t_sfk Key Figures That Are to Be Returned
* i_t_range = " rsdri_t_range_rfc Selection Conditions Connected with AND
* i_t_tablesel = " rsdri_t_selt List of Table Selections
* i_t_rtime = " rsdri_t_rtime_rfc (Only InfoCubes): Table of ranges for non-cumulative InfoCubes
* i_t_requid = " rsdr0_t_requid (Only InfoCubes): Table for ranges for REQUID
* e_t_rfcdata = " rsdri_t_rfcdata Internal Table with Query Result
* e_t_rfcdatav = " rsdri_t_rfcdatav
* e_t_field = " rsdp0_t_field DM API: RFC Return Table Description
EXCEPTIONS
ILLEGAL_INPUT = 1 " Incorrect Input Parameter
ILLEGAL_INPUT_SFC = 2 " Error in SFC Parameter
ILLEGAL_INPUT_SFK = 3 " Error in SFK Parameter
ILLEGAL_INPUT_RANGE = 4 " Error in RANGE or RANGETAB Parameter
ILLEGAL_INPUT_TABLESEL = 5 " Error in TABLESEL Parameter
NO_AUTHORIZATION = 6 " No Authorization for Data Access
GENERATION_ERROR = 7 " Error in the code generation
ILLEGAL_DOWNLOAD = 8 " Download into the Specified Form Not Possible
ILLEGAL_TABLENAME = 9 " Table Name Already In Use (by DDIC or on DB)
ILLEGAL_RESULTTYPE = 10 " Incorrect value for I_RESULTTYPE
X_MESSAGE = 11 " Other Error from Deeper Modules
DATA_OVERFLOW = 12 " Too much data selected
. " RSDRI_INFOPROV_READ_RFC
The ABAP code below is a full code listing to execute function module RSDRI_INFOPROV_READ_RFC including all data declarations. The code uses the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the original method of declaring data variables up front. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8).
| ld_e_end_of_data | TYPE RS_BOOL , |
| ld_e_aggregate | TYPE RSINFOCUBE , |
| ld_e_rfcdata_uc | TYPE XSTRING , |
| ld_e_split_occurred | TYPE RSDR0_SPLIT_OCCURRED , |
| ld_e_stepuid | TYPE SYSUUID_25 , |
| it_i_t_sfc | TYPE STANDARD TABLE OF RSDRI_T_SFC,"TABLES PARAM |
| wa_i_t_sfc | LIKE LINE OF it_i_t_sfc , |
| it_i_t_sfk | TYPE STANDARD TABLE OF RSDRI_T_SFK,"TABLES PARAM |
| wa_i_t_sfk | LIKE LINE OF it_i_t_sfk , |
| it_i_t_range | TYPE STANDARD TABLE OF RSDRI_T_RANGE_RFC,"TABLES PARAM |
| wa_i_t_range | LIKE LINE OF it_i_t_range , |
| it_i_t_tablesel | TYPE STANDARD TABLE OF RSDRI_T_SELT,"TABLES PARAM |
| wa_i_t_tablesel | LIKE LINE OF it_i_t_tablesel , |
| it_i_t_rtime | TYPE STANDARD TABLE OF RSDRI_T_RTIME_RFC,"TABLES PARAM |
| wa_i_t_rtime | LIKE LINE OF it_i_t_rtime , |
| it_i_t_requid | TYPE STANDARD TABLE OF RSDR0_T_REQUID,"TABLES PARAM |
| wa_i_t_requid | LIKE LINE OF it_i_t_requid , |
| it_e_t_rfcdata | TYPE STANDARD TABLE OF RSDRI_T_RFCDATA,"TABLES PARAM |
| wa_e_t_rfcdata | LIKE LINE OF it_e_t_rfcdata , |
| it_e_t_rfcdatav | TYPE STANDARD TABLE OF RSDRI_T_RFCDATAV,"TABLES PARAM |
| wa_e_t_rfcdatav | LIKE LINE OF it_e_t_rfcdatav , |
| it_e_t_field | TYPE STANDARD TABLE OF RSDP0_T_FIELD,"TABLES PARAM |
| wa_e_t_field | LIKE LINE OF it_e_t_field . |
The below ABAP code uses the older none in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. It may also be useful if you are using an older version of SAP as some of the newer syntax above, such as the @DATA is not available until 4.70 EHP 8.
DATA:
| ld_e_end_of_data | TYPE RS_BOOL , |
| it_i_t_sfc | TYPE STANDARD TABLE OF RSDRI_T_SFC , |
| wa_i_t_sfc | LIKE LINE OF it_i_t_sfc, |
| ld_i_infoprov | TYPE RSINFOPROV , |
| it_i_t_sfk | TYPE STANDARD TABLE OF RSDRI_T_SFK , |
| wa_i_t_sfk | LIKE LINE OF it_i_t_sfk, |
| ld_i_reference_date | TYPE RSDRI_REFDATE , |
| ld_e_aggregate | TYPE RSINFOCUBE , |
| ld_i_save_in_table | TYPE RSDRI_SAVE_IN_TABLE , |
| it_i_t_range | TYPE STANDARD TABLE OF RSDRI_T_RANGE_RFC , |
| wa_i_t_range | LIKE LINE OF it_i_t_range, |
| ld_e_rfcdata_uc | TYPE XSTRING , |
| ld_i_tablename | TYPE RSDRI_TABLENAME , |
| ld_e_split_occurred | TYPE RSDR0_SPLIT_OCCURRED , |
| it_i_t_tablesel | TYPE STANDARD TABLE OF RSDRI_T_SELT , |
| wa_i_t_tablesel | LIKE LINE OF it_i_t_tablesel, |
| ld_i_save_in_file | TYPE RSDRI_SAVE_IN_FILE , |
| ld_e_stepuid | TYPE SYSUUID_25 , |
| it_i_t_rtime | TYPE STANDARD TABLE OF RSDRI_T_RTIME_RFC , |
| wa_i_t_rtime | LIKE LINE OF it_i_t_rtime, |
| ld_i_filename | TYPE RSDRI_FILENAME , |
| it_i_t_requid | TYPE STANDARD TABLE OF RSDR0_T_REQUID , |
| wa_i_t_requid | LIKE LINE OF it_i_t_requid, |
| it_e_t_rfcdata | TYPE STANDARD TABLE OF RSDRI_T_RFCDATA , |
| wa_e_t_rfcdata | LIKE LINE OF it_e_t_rfcdata, |
| ld_i_authority_check | TYPE RSDRI_AUTHCHK , |
| ld_i_currency_conversion | TYPE RSDR0_CURR_CONV , |
| it_e_t_rfcdatav | TYPE STANDARD TABLE OF RSDRI_T_RFCDATAV , |
| wa_e_t_rfcdatav | LIKE LINE OF it_e_t_rfcdatav, |
| it_e_t_field | TYPE STANDARD TABLE OF RSDP0_T_FIELD , |
| wa_e_t_field | LIKE LINE OF it_e_t_field, |
| ld_i_s_rfcmode | TYPE RSDP0_S_RFCMODE , |
| ld_i_maxrows | TYPE I , |
| ld_i_use_db_aggregation | TYPE RS_BOOL , |
| ld_i_use_aggregates | TYPE RS_BOOL , |
| ld_i_rollup_only | TYPE RS_BOOL , |
| ld_i_read_ods_delta | TYPE RS_BOOL , |
| ld_i_resulttype | TYPE RSDRI_RESULTTYPE , |
| ld_i_debug | TYPE RS_BOOL , |
| ld_i_t_range_string | TYPE RSDRI_T_RANGE . |
This module is an RFC version of the module RSDRI_INFOPROV_READ, but
with restricted functions.
...See here for full SAP fm documentation
Please help keep this info upto date and use the comments section below to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name RSDRI_INFOPROV_READ_RFC or its description.
RSDRI_INFOPROV_READ_RFC - BW Data Manager: General RFC Read Interface RSDRI_INFOPROV_READ_DF - BW Data Manager: General RFC Read Interface RSDRI_INFOPROV_READ_CONTEXT - Context Information for Read Access RSDRI_INFOPROV_READ - BW Data Manager: General Read Interfaces RSDRI_INFOPROV_DELETE - Delete from a Infocube / ODS RSDRI_INFOCUBE_GEN_PROGRAM - Generation of a Write Program for InfoCubes