SAP RKD_KEYID_OUTPUT Function Module for
RKD_KEYID_OUTPUT is a standard rkd keyid output SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, 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 rkd keyid output FM, simply by entering the name RKD_KEYID_OUTPUT into the relevant SAP transaction such as SE37 or SE38.
Function Group: KYP3
Program Name: SAPLKYP3
Main Program: SAPLKYP3
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function RKD_KEYID_OUTPUT 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 'RKD_KEYID_OUTPUT'".
EXPORTING
* APPLCLASS = "Application class
* I_LANGU = SY-LANGU "Language
* I_MASK = '/' "Wildcard character for compound criteria
* I_RKB1F = "Field string with information of the report
* I_RKB1X = "Master fields
* I_ROLNM = "
* I_SEVERITY = 'E' "Message type -->
* I_TABLE = "Data table
* I_TYPE = ' ' "
* I_VARTYP = '1' "
* I_FYEAR = 0000 "
* DEP_IN = "
* I_VTYP6_SELOPT = ' ' "
* I_CHECK_MODE = '*' "Check entry
* I_ELNR1 = "
* I_ELNR2 = "
* I_FIENM = "Field name
* I_FORMAT = 'I' "I=Internal format E=Output format
* I_HCLASS = ' ' "
* I_KEYID = ' ' "Characteristic (only field itself)
IMPORTING
DEP_OUT = "
E_DOCU_FLAG = "Document is available
E_KEYID_I = "Characteristic internal format (only field itself)
E_KEYID_O = "Characteristic output format (only field itself)
E_TYPE = "
SUBRC = "Error occurred ?
DPFIE = "Compound field which was not found
E_ATEXT = "Text of the characteristic
E_ATEXT_FLAG = "Long text flag
E_ATEXT_L = "
E_CDIFIE = "Correct Field_TAB entry
E_C_KEYID_I = "Concatenate characteristic
E_C_KEYID_O = "Prepared compound characteristic
E_C_OUTLN = "Total output length of compound characteristic
TABLES
* ADD_SEL_TAB = "
* FDEP_TAB = "Dependency table
* FIELD_TAB = "Field table
* FORM_TAB = "Row/column structure
* SEIG = "Characteristics
EXCEPTIONS
CONVERT_ERROR = 1
IMPORTING Parameters details for RKD_KEYID_OUTPUT
APPLCLASS - Application class
Data type: RKB1D-APPLCLASSOptional: Yes
Call by Reference: No ( called with pass by value option)
I_LANGU - Language
Data type: SY-LANGUDefault: SY-LANGU
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_MASK - Wildcard character for compound criteria
Data type: CDefault: '/'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_RKB1F - Field string with information of the report
Data type: RKB1FOptional: Yes
Call by Reference: No ( called with pass by value option)
I_RKB1X - Master fields
Data type: RKB1XOptional: Yes
Call by Reference: No ( called with pass by value option)
I_ROLNM -
Data type: CDIFIE-ROLNMOptional: Yes
Call by Reference: No ( called with pass by value option)
I_SEVERITY - Message type -->
Data type: CDefault: 'E'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_TABLE - Data table
Data type: RKB1D-TABNAMEOptional: Yes
Call by Reference: No ( called with pass by value option)
I_TYPE -
Data type: CFBSE01-TYPEDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_VARTYP -
Data type: CFBVP01-VARTYPDefault: '1'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_FYEAR -
Data type: BDATJDefault: 0000
Optional: Yes
Call by Reference: No ( called with pass by value option)
DEP_IN -
Data type: RKD_T_DEPOptional: Yes
Call by Reference: No ( called with pass by value option)
I_VTYP6_SELOPT -
Data type: CDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_CHECK_MODE - Check entry
Data type: CDefault: '*'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ELNR1 -
Data type: CFBFO01-ELNR1Optional: Yes
Call by Reference: No ( called with pass by value option)
I_ELNR2 -
Data type: CFBFO01-ELNR2Optional: Yes
Call by Reference: No ( called with pass by value option)
I_FIENM - Field name
Data type: CDIFIE-FIENMOptional: Yes
Call by Reference: No ( called with pass by value option)
I_FORMAT - I=Internal format E=Output format
Data type: CDefault: 'I'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_HCLASS -
Data type: RSTHINFO-HCLASSDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_KEYID - Characteristic (only field itself)
Data type: CFBSE01-LOWDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for RKD_KEYID_OUTPUT
DEP_OUT -
Data type: RKD_T_DEPOptional: No
Call by Reference: No ( called with pass by value option)
E_DOCU_FLAG - Document is available
Data type: RKB1T-DFLAGOptional: No
Call by Reference: No ( called with pass by value option)
E_KEYID_I - Characteristic internal format (only field itself)
Data type: CFBSE01-LOWOptional: No
Call by Reference: No ( called with pass by value option)
E_KEYID_O - Characteristic output format (only field itself)
Data type: CFBSE01-LOWOptional: No
Call by Reference: No ( called with pass by value option)
E_TYPE -
Data type: CFBSE01-TYPEOptional: No
Call by Reference: No ( called with pass by value option)
SUBRC - Error occurred ?
Data type: SY-SUBRCOptional: No
Call by Reference: No ( called with pass by value option)
DPFIE - Compound field which was not found
Data type: CFBKT01-DPFIEOptional: No
Call by Reference: No ( called with pass by value option)
E_ATEXT - Text of the characteristic
Data type: RKB1T-TEXTOptional: No
Call by Reference: No ( called with pass by value option)
E_ATEXT_FLAG - Long text flag
Data type: RKB1T-TFLAGOptional: No
Call by Reference: No ( called with pass by value option)
E_ATEXT_L -
Data type: RKB1T-TEXT_LOptional: No
Call by Reference: No ( called with pass by value option)
E_CDIFIE - Correct Field_TAB entry
Data type: CDIFIEOptional: No
Call by Reference: No ( called with pass by value option)
E_C_KEYID_I - Concatenate characteristic
Data type: CFBSE01-LOWOptional: No
Call by Reference: No ( called with pass by value option)
E_C_KEYID_O - Prepared compound characteristic
Data type: CFBSE01-LOWOptional: No
Call by Reference: No ( called with pass by value option)
E_C_OUTLN - Total output length of compound characteristic
Data type: CDIFIE-OUTLNOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for RKD_KEYID_OUTPUT
ADD_SEL_TAB -
Data type: CEDSTOptional: Yes
Call by Reference: No ( called with pass by value option)
FDEP_TAB - Dependency table
Data type: CDIDEPOptional: Yes
Call by Reference: No ( called with pass by value option)
FIELD_TAB - Field table
Data type: CDIFIEOptional: Yes
Call by Reference: No ( called with pass by value option)
FORM_TAB - Row/column structure
Data type: CFBFO01Optional: Yes
Call by Reference: No ( called with pass by value option)
SEIG - Characteristics
Data type: CFBSE01Optional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
CONVERT_ERROR -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for RKD_KEYID_OUTPUT 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_dep_out | TYPE RKD_T_DEP, " | |||
| lv_applclass | TYPE RKB1D-APPLCLASS, " | |||
| lt_add_sel_tab | TYPE STANDARD TABLE OF CEDST, " | |||
| lv_convert_error | TYPE CEDST, " | |||
| lv_i_langu | TYPE SY-LANGU, " SY-LANGU | |||
| lv_e_docu_flag | TYPE RKB1T-DFLAG, " | |||
| lv_i_mask | TYPE C, " '/' | |||
| lv_e_keyid_i | TYPE CFBSE01-LOW, " | |||
| lv_i_rkb1f | TYPE RKB1F, " | |||
| lv_e_keyid_o | TYPE CFBSE01-LOW, " | |||
| lv_e_type | TYPE CFBSE01-TYPE, " | |||
| lv_i_rkb1x | TYPE RKB1X, " | |||
| lv_subrc | TYPE SY-SUBRC, " | |||
| lv_i_rolnm | TYPE CDIFIE-ROLNM, " | |||
| lv_i_severity | TYPE C, " 'E' | |||
| lv_i_table | TYPE RKB1D-TABNAME, " | |||
| lv_i_type | TYPE CFBSE01-TYPE, " SPACE | |||
| lv_i_vartyp | TYPE CFBVP01-VARTYP, " '1' | |||
| lv_i_fyear | TYPE BDATJ, " 0000 | |||
| lv_dpfie | TYPE CFBKT01-DPFIE, " | |||
| lv_dep_in | TYPE RKD_T_DEP, " | |||
| lt_fdep_tab | TYPE STANDARD TABLE OF CDIDEP, " | |||
| lv_i_vtyp6_selopt | TYPE C, " SPACE | |||
| lv_e_atext | TYPE RKB1T-TEXT, " | |||
| lt_field_tab | TYPE STANDARD TABLE OF CDIFIE, " | |||
| lv_i_check_mode | TYPE C, " '*' | |||
| lv_i_elnr1 | TYPE CFBFO01-ELNR1, " | |||
| lt_form_tab | TYPE STANDARD TABLE OF CFBFO01, " | |||
| lv_e_atext_flag | TYPE RKB1T-TFLAG, " | |||
| lt_seig | TYPE STANDARD TABLE OF CFBSE01, " | |||
| lv_i_elnr2 | TYPE CFBFO01-ELNR2, " | |||
| lv_e_atext_l | TYPE RKB1T-TEXT_L, " | |||
| lv_i_fienm | TYPE CDIFIE-FIENM, " | |||
| lv_e_cdifie | TYPE CDIFIE, " | |||
| lv_i_format | TYPE C, " 'I' | |||
| lv_e_c_keyid_i | TYPE CFBSE01-LOW, " | |||
| lv_i_hclass | TYPE RSTHINFO-HCLASS, " SPACE | |||
| lv_e_c_keyid_o | TYPE CFBSE01-LOW, " | |||
| lv_i_keyid | TYPE CFBSE01-LOW, " SPACE | |||
| lv_e_c_outln | TYPE CDIFIE-OUTLN. " |
|   CALL FUNCTION 'RKD_KEYID_OUTPUT' " |
| EXPORTING | ||
| APPLCLASS | = lv_applclass | |
| I_LANGU | = lv_i_langu | |
| I_MASK | = lv_i_mask | |
| I_RKB1F | = lv_i_rkb1f | |
| I_RKB1X | = lv_i_rkb1x | |
| I_ROLNM | = lv_i_rolnm | |
| I_SEVERITY | = lv_i_severity | |
| I_TABLE | = lv_i_table | |
| I_TYPE | = lv_i_type | |
| I_VARTYP | = lv_i_vartyp | |
| I_FYEAR | = lv_i_fyear | |
| DEP_IN | = lv_dep_in | |
| I_VTYP6_SELOPT | = lv_i_vtyp6_selopt | |
| I_CHECK_MODE | = lv_i_check_mode | |
| I_ELNR1 | = lv_i_elnr1 | |
| I_ELNR2 | = lv_i_elnr2 | |
| I_FIENM | = lv_i_fienm | |
| I_FORMAT | = lv_i_format | |
| I_HCLASS | = lv_i_hclass | |
| I_KEYID | = lv_i_keyid | |
| IMPORTING | ||
| DEP_OUT | = lv_dep_out | |
| E_DOCU_FLAG | = lv_e_docu_flag | |
| E_KEYID_I | = lv_e_keyid_i | |
| E_KEYID_O | = lv_e_keyid_o | |
| E_TYPE | = lv_e_type | |
| SUBRC | = lv_subrc | |
| DPFIE | = lv_dpfie | |
| E_ATEXT | = lv_e_atext | |
| E_ATEXT_FLAG | = lv_e_atext_flag | |
| E_ATEXT_L | = lv_e_atext_l | |
| E_CDIFIE | = lv_e_cdifie | |
| E_C_KEYID_I | = lv_e_c_keyid_i | |
| E_C_KEYID_O | = lv_e_c_keyid_o | |
| E_C_OUTLN | = lv_e_c_outln | |
| TABLES | ||
| ADD_SEL_TAB | = lt_add_sel_tab | |
| FDEP_TAB | = lt_fdep_tab | |
| FIELD_TAB | = lt_field_tab | |
| FORM_TAB | = lt_form_tab | |
| SEIG | = lt_seig | |
| EXCEPTIONS | ||
| CONVERT_ERROR = 1 | ||
| . " RKD_KEYID_OUTPUT | ||
ABAP code using 7.40 inline data declarations to call FM RKD_KEYID_OUTPUT
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 APPLCLASS FROM RKB1D INTO @DATA(ld_applclass). | ||||
| "SELECT single LANGU FROM SY INTO @DATA(ld_i_langu). | ||||
| DATA(ld_i_langu) | = SY-LANGU. | |||
| "SELECT single DFLAG FROM RKB1T INTO @DATA(ld_e_docu_flag). | ||||
| DATA(ld_i_mask) | = '/'. | |||
| "SELECT single LOW FROM CFBSE01 INTO @DATA(ld_e_keyid_i). | ||||
| "SELECT single LOW FROM CFBSE01 INTO @DATA(ld_e_keyid_o). | ||||
| "SELECT single TYPE FROM CFBSE01 INTO @DATA(ld_e_type). | ||||
| "SELECT single SUBRC FROM SY INTO @DATA(ld_subrc). | ||||
| "SELECT single ROLNM FROM CDIFIE INTO @DATA(ld_i_rolnm). | ||||
| DATA(ld_i_severity) | = 'E'. | |||
| "SELECT single TABNAME FROM RKB1D INTO @DATA(ld_i_table). | ||||
| "SELECT single TYPE FROM CFBSE01 INTO @DATA(ld_i_type). | ||||
| DATA(ld_i_type) | = ' '. | |||
| "SELECT single VARTYP FROM CFBVP01 INTO @DATA(ld_i_vartyp). | ||||
| DATA(ld_i_vartyp) | = '1'. | |||
| DATA(ld_i_fyear) | = 0000. | |||
| "SELECT single DPFIE FROM CFBKT01 INTO @DATA(ld_dpfie). | ||||
| DATA(ld_i_vtyp6_selopt) | = ' '. | |||
| "SELECT single TEXT FROM RKB1T INTO @DATA(ld_e_atext). | ||||
| DATA(ld_i_check_mode) | = '*'. | |||
| "SELECT single ELNR1 FROM CFBFO01 INTO @DATA(ld_i_elnr1). | ||||
| "SELECT single TFLAG FROM RKB1T INTO @DATA(ld_e_atext_flag). | ||||
| "SELECT single ELNR2 FROM CFBFO01 INTO @DATA(ld_i_elnr2). | ||||
| "SELECT single TEXT_L FROM RKB1T INTO @DATA(ld_e_atext_l). | ||||
| "SELECT single FIENM FROM CDIFIE INTO @DATA(ld_i_fienm). | ||||
| DATA(ld_i_format) | = 'I'. | |||
| "SELECT single LOW FROM CFBSE01 INTO @DATA(ld_e_c_keyid_i). | ||||
| "SELECT single HCLASS FROM RSTHINFO INTO @DATA(ld_i_hclass). | ||||
| DATA(ld_i_hclass) | = ' '. | |||
| "SELECT single LOW FROM CFBSE01 INTO @DATA(ld_e_c_keyid_o). | ||||
| "SELECT single LOW FROM CFBSE01 INTO @DATA(ld_i_keyid). | ||||
| DATA(ld_i_keyid) | = ' '. | |||
| "SELECT single OUTLN FROM CDIFIE INTO @DATA(ld_e_c_outln). | ||||
Search for further information about these or an SAP related objects