ABAP Select data from SAP table IEMTRRDNGDOCC into internal table
Get Example source ABAP code based on a different SAP table
Below is a number of ABAP code snippets to demonstrate how to select data from SAP IEMTRRDNGDOCC table and store it within an internal table, including using the newer @DATA inline declaration methods. It also shows you various ways to process this data using ABAP work area, inline declaration or field symbols including executing all the relevant CONVERSION_EXIT routines specific to IEMTRRDNGDOCC. See here for more generic Select statement tips.
Sometimes data within SAP is stored within the database table in a different format to what it is displayed to the user. These input/output conversation FM routines are what translates the data between the two formats.
There is also a full declaration of the IEMTRRDNGDOCC table where each field has a char/string type for you to simply copy and paste. This allows you to use processing that is only available to these field types such as the CONCATENATE statement.
DATA: IT_IEMTRRDNGDOCC TYPE STANDARD TABLE OF IEMTRRDNGDOCC, WA_IEMTRRDNGDOCC TYPE IEMTRRDNGDOCC, GD_STR TYPE STRING. DATA: lo_typedescr type REF TO cl_abap_typedescr. DATA: lv_fieldname type fieldname. FIELD-SYMBOLS: <FIELD> TYPE any. FIELD-SYMBOLS: <IEMTRRDNGDOCC> TYPE IEMTRRDNGDOCC. *Process all fields in table header/work area as string values PERFORM process_as_string_field_values CHANGING wa_IEMTRRDNGDOCC. SELECT * *restrict ABAP select to first 10 rows UP TO 10 ROWS FROM IEMTRRDNGDOCC INTO TABLE IT_IEMTRRDNGDOCC. *Select data and declare internal table using in-line method @DATA *SELECT * * FROM IEMTRRDNGDOCC * INTO TABLE @DATA(IT_IEMTRRDNGDOCC2). *--Further methods of using ABAP code to select data from SAP database tables *You can also declare the header/work area using the in-line DATA declaration method READ TABLE IT_IEMTRRDNGDOCC INDEX 1 INTO DATA(WA_IEMTRRDNGDOCC2). *Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL LOOP AT IT_IEMTRRDNGDOCC ASSIGNING <IEMTRRDNGDOCC>.*To update a field value using a field symbol simply change the value via the field symbol pointer
<IEMTRRDNGDOCC>-MANDT = 1.
<IEMTRRDNGDOCC>-METERREADINGDOCUMENT = 1.
<IEMTRRDNGDOCC>-UTILITIESINSTALLATION = 1.
<IEMTRRDNGDOCC>-METERREADINGREASON = 1.
<IEMTRRDNGDOCC>-UTILITIESDEVICE = 1.
ENDLOOP. LOOP AT IT_IEMTRRDNGDOCC INTO WA_IEMTRRDNGDOCC. *Write horizonal line to screen report. WRITE:/ sy-uline. *Write selected data to screen/report before conversion. WRITE:/ sy-vline, WA_IEMTRRDNGDOCC-SERIALNUMBER, sy-vline,
WA_IEMTRRDNGDOCC-EQUIPMENT, sy-vline,
WA_IEMTRRDNGDOCC-UTILITIESREGISTER, sy-vline,
WA_IEMTRRDNGDOCC-METERREADINGDATE, sy-vline,
WA_IEMTRRDNGDOCC-METERREADINGTIME, sy-vline,
WA_IEMTRRDNGDOCC-METERREADINGRESULTVALUE, sy-vline.
ENDLOOP. *Add any further fields from structure WA_IEMTRRDNGDOCC you want to display... WRITE:/ sy-uline. * Aternatively use generic code to Write field values (and NAME) to screen report DO. ASSIGN COMPONENT sy-index OF STRUCTURE wa_IEMTRRDNGDOCC TO <field>. IF sy-subrc <> 0. EXIT. ENDIF. WRITE:/ 'Field Value', <field>, sy-vline. gd_str = <field> . lo_typedescr ?= CL_ABAP_DATADESCR=>DESCRIBE_BY_DATA( <field> ). lv_fieldname = lo_typedescr->GET_RELATIVE_NAME( ). WRITE:/ 'Field Name', lv_fieldname. ENDDO. *Redo loop but convert all fields from internal to out value LOOP AT IT_IEMTRRDNGDOCC INTO WA_IEMTRRDNGDOCC. *Write horizonal line to screen report. WRITE:/ sy-uline. *Convert all fields to display/output versions using conversion routines PERFORM convert_all_field_values CHANGING wa_EKKO. ENDLOOP. *&---------------------------------------------------------------------* *& Form convert_all_field_values *&---------------------------------------------------------------------* FORM convert_all_field_values CHANGING p_EKKO LIKE wa_EKKO. DATA: ld_input(1000) TYPE c, ld_output(1000) TYPE C.
*Conversion exit ALPHA, internal->external for field METERREADINGDOCUMENT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-METERREADINGDOCUMENT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-METERREADINGDOCUMENT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field UTILITIESINSTALLATION CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-UTILITIESINSTALLATION IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-UTILITIESINSTALLATION.
WRITE:/ 'New Value:', ld_input.
*Conversion exit GERNR, internal->external for field UTILITIESDEVICE CALL FUNCTION 'CONVERSION_EXIT_GERNR_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-UTILITIESDEVICE IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-UTILITIESDEVICE.
WRITE:/ 'New Value:', ld_input.
*Conversion exit GERNR, internal->external for field SERIALNUMBER CALL FUNCTION 'CONVERSION_EXIT_GERNR_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-SERIALNUMBER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-SERIALNUMBER.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field EQUIPMENT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-EQUIPMENT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-EQUIPMENT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit CUNIT, internal->external for field METERREADINGMEASUREMENTUNIT CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-METERREADINGMEASUREMENTUNIT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-METERREADINGMEASUREMENTUNIT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit CUNIT, internal->external for field BILLINGMEASUREMENTUNIT CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-BILLINGMEASUREMENTUNIT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-BILLINGMEASUREMENTUNIT.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field SERVICEORDER CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-SERVICEORDER IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-SERVICEORDER.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field PLAUSIBLEMETERREADINGDOC CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-PLAUSIBLEMETERREADINGDOC IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-PLAUSIBLEMETERREADINGDOC.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field IMPLAUSIBLEMETERREADINGDOC CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-IMPLAUSIBLEMETERREADINGDOC IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-IMPLAUSIBLEMETERREADINGDOC.
WRITE:/ 'New Value:', ld_input.
*Conversion exit ALPHA, internal->external for field MISSINGMETERREADINGDOC CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_IEMTRRDNGDOCC-MISSINGMETERREADINGDOC IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_IEMTRRDNGDOCC-MISSINGMETERREADINGDOC.
WRITE:/ 'New Value:', ld_input.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_IEMTRRDNGDOCC_STR,
MANDT TYPE STRING,
METERREADINGDOCUMENT TYPE STRING,
UTILITIESINSTALLATION TYPE STRING,
METERREADINGREASON TYPE STRING,
UTILITIESDEVICE TYPE STRING,
SERIALNUMBER TYPE STRING,
EQUIPMENT TYPE STRING,
UTILITIESREGISTER TYPE STRING,
METERREADINGDATE TYPE STRING,
METERREADINGTIME TYPE STRING,
METERREADINGRESULTVALUE TYPE STRING,
METERREADINGMEASUREMENTUNIT TYPE STRING,
BLLDMETERREADINGRESULTVALUE TYPE STRING,
BILLINGMEASUREMENTUNIT TYPE STRING,
NMBROFUTILSREGDIGITSPREDCMLS TYPE STRING,
NMBROFUTILSREGDIGITSDCMLS TYPE STRING,
METERREADINGSTATUS TYPE STRING,
METERREADINGTYPE TYPE STRING,
METERREADINGCATEGORY TYPE STRING,
SCHEDULEDMETERREADINGDATE TYPE STRING,
ACTUALMETERREADINGDATE TYPE STRING,
ACTUALMETERREADINGTIME TYPE STRING,
MAXIMUMMETERREADINGDATE TYPE STRING,
MAXIMUMMETERREADINGTIME TYPE STRING,
UTILITIESGASALLOCATIONDATE TYPE STRING,
CTRLMTRREADINGORDERSCHEDLDDATE TYPE STRING,
CTRLMTRREADINGORDERSCHEDLDTIME TYPE STRING,
CONTROLMETERREADINGISPRINTED TYPE STRING,
INDEPMTRRDNGVALIDATIONCHK TYPE STRING,
DEPDNTMTRRDNGVALIDATIONCHK TYPE STRING,
METERREADERNOTECODE TYPE STRING,
METERREADERNOTEFLLWUPACTN TYPE STRING,
METERREADERCODE TYPE STRING,
METERREADINGBASEPERIODCAT TYPE STRING,
METERREADINGCREATIONDATE TYPE STRING,
METERREADINGCREATEDBYUSER TYPE STRING,
METERREADINGLASTCHANGEDATE TYPE STRING,
METERREADINGLASTCHANGEDBYUSER TYPE STRING,
ADVANCEDMETERINGSYSTEM TYPE STRING,
METERREADINGTRANSFERSTATUS TYPE STRING,
METERREADINGTRANSFERDATETIME TYPE STRING,
ADVNCDMETERINGDATAORIGNTYPE TYPE STRING,
MOBILEMETERREADINGENTRYSYSTEM TYPE STRING,
METERREADINGORDERISOUTPUTTED TYPE STRING,
METERREADINGCHECKDIGIT TYPE STRING,
METERREADINGFASTENTRYNUMBER TYPE STRING,
METERREADINGISRECAPTURED TYPE STRING,
METERREADINGAUTOMMNTRGSTATUS TYPE STRING,
MTRRDNGISSCHDLFORMLTPLORDCRTN TYPE STRING,
MLTPLMTRRDNGORDCRTNCNTRLGROUP TYPE STRING,
MLTPLMTRRDNGREFSCHEDLDDATE TYPE STRING,
SERVICEORDER TYPE STRING,
ORDERTYPE TYPE STRING,
METERREADINGUNIT TYPE STRING,
METERREADINGISSUPPRESSED TYPE STRING,
SCHEDLDMTRREADINGCATEGORY TYPE STRING,
METERREADINGALLOCATIONDATE TYPE STRING,
SCHEDULEDUTILITIESBILLINGDATE TYPE STRING,
MTRRDNGACTIVESTATUS TYPE STRING,
UTILITIESPORTION TYPE STRING,
NUMBEROFMETERREADINGDOCUMENTS TYPE STRING,
PLAUSIBLEMETERREADINGDOC TYPE STRING,
NMBROFPLAUSIBLEMTRRDNGRSLTS TYPE STRING,
IMPLAUSIBLEMETERREADINGDOC TYPE STRING,
NMBROFIMPLAUSIBLEMTRRDNGRSLTS TYPE STRING,
MISSINGMETERREADINGDOC TYPE STRING,
NMBROFMISSINGMTRRDNGRSLTS TYPE STRING,END OF T_EKKO_STR. DATA: WA_IEMTRRDNGDOCC_STR type T_EKKO_STR. DATA: ld_text TYPE string. LOOP AT IT_EKKO INTO WA_EKKO. MOVE-CORRESPONDING wa_EKKO TO WA_EKKO_STR. CONCATENATE: sy-vline
WA_IEMTRRDNGDOCC_STR-MANDT sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGDOCUMENT sy-vline
WA_IEMTRRDNGDOCC_STR-UTILITIESINSTALLATION sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGREASON sy-vline
WA_IEMTRRDNGDOCC_STR-UTILITIESDEVICE sy-vline
WA_IEMTRRDNGDOCC_STR-SERIALNUMBER sy-vline
WA_IEMTRRDNGDOCC_STR-EQUIPMENT sy-vline
WA_IEMTRRDNGDOCC_STR-UTILITIESREGISTER sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGDATE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGTIME sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGRESULTVALUE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGMEASUREMENTUNIT sy-vline
WA_IEMTRRDNGDOCC_STR-BLLDMETERREADINGRESULTVALUE sy-vline
WA_IEMTRRDNGDOCC_STR-BILLINGMEASUREMENTUNIT sy-vline
WA_IEMTRRDNGDOCC_STR-NMBROFUTILSREGDIGITSPREDCMLS sy-vline
WA_IEMTRRDNGDOCC_STR-NMBROFUTILSREGDIGITSDCMLS sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGSTATUS sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGTYPE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGCATEGORY sy-vline
WA_IEMTRRDNGDOCC_STR-SCHEDULEDMETERREADINGDATE sy-vline
WA_IEMTRRDNGDOCC_STR-ACTUALMETERREADINGDATE sy-vline
WA_IEMTRRDNGDOCC_STR-ACTUALMETERREADINGTIME sy-vline
WA_IEMTRRDNGDOCC_STR-MAXIMUMMETERREADINGDATE sy-vline
WA_IEMTRRDNGDOCC_STR-MAXIMUMMETERREADINGTIME sy-vline
WA_IEMTRRDNGDOCC_STR-UTILITIESGASALLOCATIONDATE sy-vline
WA_IEMTRRDNGDOCC_STR-CTRLMTRREADINGORDERSCHEDLDDATE sy-vline
WA_IEMTRRDNGDOCC_STR-CTRLMTRREADINGORDERSCHEDLDTIME sy-vline
WA_IEMTRRDNGDOCC_STR-CONTROLMETERREADINGISPRINTED sy-vline
WA_IEMTRRDNGDOCC_STR-INDEPMTRRDNGVALIDATIONCHK sy-vline
WA_IEMTRRDNGDOCC_STR-DEPDNTMTRRDNGVALIDATIONCHK sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADERNOTECODE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADERNOTEFLLWUPACTN sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADERCODE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGBASEPERIODCAT sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGCREATIONDATE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGCREATEDBYUSER sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGLASTCHANGEDATE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGLASTCHANGEDBYUSER sy-vline
WA_IEMTRRDNGDOCC_STR-ADVANCEDMETERINGSYSTEM sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGTRANSFERSTATUS sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGTRANSFERDATETIME sy-vline
WA_IEMTRRDNGDOCC_STR-ADVNCDMETERINGDATAORIGNTYPE sy-vline
WA_IEMTRRDNGDOCC_STR-MOBILEMETERREADINGENTRYSYSTEM sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGORDERISOUTPUTTED sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGCHECKDIGIT sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGFASTENTRYNUMBER sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGISRECAPTURED sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGAUTOMMNTRGSTATUS sy-vline
WA_IEMTRRDNGDOCC_STR-MTRRDNGISSCHDLFORMLTPLORDCRTN sy-vline
WA_IEMTRRDNGDOCC_STR-MLTPLMTRRDNGORDCRTNCNTRLGROUP sy-vline
WA_IEMTRRDNGDOCC_STR-MLTPLMTRRDNGREFSCHEDLDDATE sy-vline
WA_IEMTRRDNGDOCC_STR-SERVICEORDER sy-vline
WA_IEMTRRDNGDOCC_STR-ORDERTYPE sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGUNIT sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGISSUPPRESSED sy-vline
WA_IEMTRRDNGDOCC_STR-SCHEDLDMTRREADINGCATEGORY sy-vline
WA_IEMTRRDNGDOCC_STR-METERREADINGALLOCATIONDATE sy-vline
WA_IEMTRRDNGDOCC_STR-SCHEDULEDUTILITIESBILLINGDATE sy-vline
WA_IEMTRRDNGDOCC_STR-MTRRDNGACTIVESTATUS sy-vline
WA_IEMTRRDNGDOCC_STR-UTILITIESPORTION sy-vline
WA_IEMTRRDNGDOCC_STR-NUMBEROFMETERREADINGDOCUMENTS sy-vline
WA_IEMTRRDNGDOCC_STR-PLAUSIBLEMETERREADINGDOC sy-vline
WA_IEMTRRDNGDOCC_STR-NMBROFPLAUSIBLEMTRRDNGRSLTS sy-vline
WA_IEMTRRDNGDOCC_STR-IMPLAUSIBLEMETERREADINGDOC sy-vline
WA_IEMTRRDNGDOCC_STR-NMBROFIMPLAUSIBLEMTRRDNGRSLTS sy-vline
WA_IEMTRRDNGDOCC_STR-MISSINGMETERREADINGDOC sy-vline
WA_IEMTRRDNGDOCC_STR-NMBROFMISSINGMTRRDNGRSLTS sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.