SAP ISU_RATE_TYPE_REQUEST Function Module for INTERNAL: Selection Help for Rate Types (ON VALUE-REQUEST)
ISU_RATE_TYPE_REQUEST is a standard isu rate type request SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for INTERNAL: Selection Help for Rate Types (ON VALUE-REQUEST) processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for isu rate type request FM, simply by entering the name ISU_RATE_TYPE_REQUEST into the relevant SAP transaction such as SE37 or SE38.
Function Group: E20Q
Program Name: SAPLE20Q
Main Program: SAPLE20Q
Appliation area: E
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISU_RATE_TYPE_REQUEST pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'ISU_RATE_TYPE_REQUEST'"INTERNAL: Selection Help for Rate Types (ON VALUE-REQUEST).
EXPORTING
X_OBJTYPE = "
X_IRATECAT = "
* X_SPARTYP = ' ' "
* X_THGVER = ' ' "
* X_INST_DATA = "
* X_REFVALUE_DATA = "
* X_ETDZ = "Technical data for installed register
* X_V_EGER = "Generated Table for View &
* X_OPERAND = "Operand
* X_ANLAGE = "
X_DYNAME = "Name of the Main Program
X_DYNUMB = "Screen Number
X_DYFIELD_TARIFART = "
* X_DYFIELD_AB = ' ' "
* X_DYFIELD_BIS = ' ' "
* X_AB = '00000000' "
* X_BIS = '00000000' "Date at Which a Time Slice Expires
IMPORTING
Y_TARIFART = "
EXCEPTIONS
RATE_NOT_FOUND = 1 WRONG_DATE = 2 SYSTEM_ERROR = 3
Customer Function user exits
Below is a list of CUSTOMER FUNCTION exit user exits that are available within this program and maybe relevant for this FM.EXIT_SAPLE20Q_001 IS-U: User Exit for Rate Type Input Help
EXIT_SAPLE20Q_002 IS-U: User Exit for Input Help for Rate Fact Group
EXIT_SAPLE20Q_003 IS-U: User Exit for Checking Rate Type and Fact Group for PAI Event
EXIT_SAPLE20Q_004 ISU: User Exit for Proposal Logic for Rate Type+Fact Group for PBO Event
IMPORTING Parameters details for ISU_RATE_TYPE_REQUEST
X_OBJTYPE -
Data type: ISU20_OPERAND_DATA-OBJTYPEOptional: No
Call by Reference: No ( called with pass by value option)
X_IRATECAT -
Data type: ISU20_FACTS-IRATECATOptional: No
Call by Reference: No ( called with pass by value option)
X_SPARTYP -
Data type: TESPT-SPARTYPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_THGVER -
Data type: TE669-THGVERDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_INST_DATA -
Data type: EANLDATAOptional: Yes
Call by Reference: No ( called with pass by value option)
X_REFVALUE_DATA -
Data type: ISU_REFVALUE_DATAOptional: Yes
Call by Reference: No ( called with pass by value option)
X_ETDZ - Technical data for installed register
Data type: ETDZOptional: Yes
Call by Reference: No ( called with pass by value option)
X_V_EGER - Generated Table for View &
Data type: V_EGEROptional: Yes
Call by Reference: Yes
X_OPERAND - Operand
Data type: E_OPERANDOptional: Yes
Call by Reference: No ( called with pass by value option)
X_ANLAGE -
Data type: EANL-ANLAGEOptional: Yes
Call by Reference: No ( called with pass by value option)
X_DYNAME - Name of the Main Program
Data type: D020S-PROGOptional: No
Call by Reference: No ( called with pass by value option)
X_DYNUMB - Screen Number
Data type: D020S-DNUMOptional: No
Call by Reference: No ( called with pass by value option)
X_DYFIELD_TARIFART -
Data type: DYNPREAD-FIELDNAMEOptional: No
Call by Reference: No ( called with pass by value option)
X_DYFIELD_AB -
Data type: DYNPREAD-FIELDNAMEDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_DYFIELD_BIS -
Data type: DYNPREAD-FIELDNAMEDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_AB -
Data type: EANLH-ABDefault: '00000000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
X_BIS - Date at Which a Time Slice Expires
Data type: EANLH-BISDefault: '00000000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for ISU_RATE_TYPE_REQUEST
Y_TARIFART -
Data type: TE069-TARIFARTOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
RATE_NOT_FOUND -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
WRONG_DATE -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
SYSTEM_ERROR - System Error
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for ISU_RATE_TYPE_REQUEST Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than 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 newer method of declaring data variables on the fly. 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), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_x_objtype | TYPE ISU20_OPERAND_DATA-OBJTYPE, " | |||
| lv_y_tarifart | TYPE TE069-TARIFART, " | |||
| lv_rate_not_found | TYPE TE069, " | |||
| lv_x_iratecat | TYPE ISU20_FACTS-IRATECAT, " | |||
| lv_x_spartyp | TYPE TESPT-SPARTYP, " SPACE | |||
| lv_x_thgver | TYPE TE669-THGVER, " SPACE | |||
| lv_x_inst_data | TYPE EANLDATA, " | |||
| lv_x_refvalue_data | TYPE ISU_REFVALUE_DATA, " | |||
| lv_x_etdz | TYPE ETDZ, " | |||
| lv_x_v_eger | TYPE V_EGER, " | |||
| lv_x_operand | TYPE E_OPERAND, " | |||
| lv_x_anlage | TYPE EANL-ANLAGE, " | |||
| lv_wrong_date | TYPE EANL, " | |||
| lv_x_dyname | TYPE D020S-PROG, " | |||
| lv_system_error | TYPE D020S, " | |||
| lv_x_dynumb | TYPE D020S-DNUM, " | |||
| lv_x_dyfield_tarifart | TYPE DYNPREAD-FIELDNAME, " | |||
| lv_x_dyfield_ab | TYPE DYNPREAD-FIELDNAME, " SPACE | |||
| lv_x_dyfield_bis | TYPE DYNPREAD-FIELDNAME, " SPACE | |||
| lv_x_ab | TYPE EANLH-AB, " '00000000' | |||
| lv_x_bis | TYPE EANLH-BIS. " '00000000' |
|   CALL FUNCTION 'ISU_RATE_TYPE_REQUEST' "INTERNAL: Selection Help for Rate Types (ON VALUE-REQUEST) |
| EXPORTING | ||
| X_OBJTYPE | = lv_x_objtype | |
| X_IRATECAT | = lv_x_iratecat | |
| X_SPARTYP | = lv_x_spartyp | |
| X_THGVER | = lv_x_thgver | |
| X_INST_DATA | = lv_x_inst_data | |
| X_REFVALUE_DATA | = lv_x_refvalue_data | |
| X_ETDZ | = lv_x_etdz | |
| X_V_EGER | = lv_x_v_eger | |
| X_OPERAND | = lv_x_operand | |
| X_ANLAGE | = lv_x_anlage | |
| X_DYNAME | = lv_x_dyname | |
| X_DYNUMB | = lv_x_dynumb | |
| X_DYFIELD_TARIFART | = lv_x_dyfield_tarifart | |
| X_DYFIELD_AB | = lv_x_dyfield_ab | |
| X_DYFIELD_BIS | = lv_x_dyfield_bis | |
| X_AB | = lv_x_ab | |
| X_BIS | = lv_x_bis | |
| IMPORTING | ||
| Y_TARIFART | = lv_y_tarifart | |
| EXCEPTIONS | ||
| RATE_NOT_FOUND = 1 | ||
| WRONG_DATE = 2 | ||
| SYSTEM_ERROR = 3 | ||
| . " ISU_RATE_TYPE_REQUEST | ||
ABAP code using 7.40 inline data declarations to call FM ISU_RATE_TYPE_REQUEST
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| "SELECT single OBJTYPE FROM ISU20_OPERAND_DATA INTO @DATA(ld_x_objtype). | ||||
| "SELECT single TARIFART FROM TE069 INTO @DATA(ld_y_tarifart). | ||||
| "SELECT single IRATECAT FROM ISU20_FACTS INTO @DATA(ld_x_iratecat). | ||||
| "SELECT single SPARTYP FROM TESPT INTO @DATA(ld_x_spartyp). | ||||
| DATA(ld_x_spartyp) | = ' '. | |||
| "SELECT single THGVER FROM TE669 INTO @DATA(ld_x_thgver). | ||||
| DATA(ld_x_thgver) | = ' '. | |||
| "SELECT single ANLAGE FROM EANL INTO @DATA(ld_x_anlage). | ||||
| "SELECT single PROG FROM D020S INTO @DATA(ld_x_dyname). | ||||
| "SELECT single DNUM FROM D020S INTO @DATA(ld_x_dynumb). | ||||
| "SELECT single FIELDNAME FROM DYNPREAD INTO @DATA(ld_x_dyfield_tarifart). | ||||
| "SELECT single FIELDNAME FROM DYNPREAD INTO @DATA(ld_x_dyfield_ab). | ||||
| DATA(ld_x_dyfield_ab) | = ' '. | |||
| "SELECT single FIELDNAME FROM DYNPREAD INTO @DATA(ld_x_dyfield_bis). | ||||
| DATA(ld_x_dyfield_bis) | = ' '. | |||
| "SELECT single AB FROM EANLH INTO @DATA(ld_x_ab). | ||||
| DATA(ld_x_ab) | = '00000000'. | |||
| "SELECT single BIS FROM EANLH INTO @DATA(ld_x_bis). | ||||
| DATA(ld_x_bis) | = '00000000'. | |||
Search for further information about these or an SAP related objects