ABAP Select data from SAP table /SAPAPO/RMCP4 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 /SAPAPO/RMCP4 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 /SAPAPO/RMCP4. 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 /SAPAPO/RMCP4 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_/SAPAPO/RMCP4 TYPE STANDARD TABLE OF /SAPAPO/RMCP4,
      WA_/SAPAPO/RMCP4 TYPE /SAPAPO/RMCP4,
      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: </SAPAPO/RMCP4> TYPE /SAPAPO/RMCP4.

*Process all fields in table header/work area as string values
  PERFORM process_as_string_field_values CHANGING wa_/SAPAPO/RMCP4.

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM /SAPAPO/RMCP4
  INTO TABLE IT_/SAPAPO/RMCP4.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM /SAPAPO/RMCP4
*  INTO TABLE @DATA(IT_/SAPAPO/RMCP42).
*--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_/SAPAPO/RMCP4 INDEX 1 INTO DATA(WA_/SAPAPO/RMCP42).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_/SAPAPO/RMCP4 ASSIGNING </SAPAPO/RMCP4>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
</SAPAPO/RMCP4>-TXTSUM = 1.
</SAPAPO/RMCP4>-TXTSP0 = 1.
</SAPAPO/RMCP4>-TXTFLD = 1.
</SAPAPO/RMCP4>-TXTOP = 1.
</SAPAPO/RMCP4>-TXTMUS = 1.
ENDLOOP.

LOOP AT IT_/SAPAPO/RMCP4 INTO WA_/SAPAPO/RMCP4.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_/SAPAPO/RMCP4-PER001, sy-vline,
WA_/SAPAPO/RMCP4-PER002, sy-vline,
WA_/SAPAPO/RMCP4-PER003, sy-vline,
WA_/SAPAPO/RMCP4-PER004, sy-vline,
WA_/SAPAPO/RMCP4-PER005, sy-vline,
WA_/SAPAPO/RMCP4-PER006, sy-vline.
ENDLOOP. *Add any further fields from structure WA_/SAPAPO/RMCP4 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_/SAPAPO/RMCP4 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_/SAPAPO/RMCP4 INTO WA_/SAPAPO/RMCP4. *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.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_/SAPAPO/RMCP4_STR,
TXTSUM TYPE STRING,
TXTSP0 TYPE STRING,
TXTFLD TYPE STRING,
TXTOP TYPE STRING,
TXTMUS TYPE STRING,
PER001 TYPE STRING,
PER002 TYPE STRING,
PER003 TYPE STRING,
PER004 TYPE STRING,
PER005 TYPE STRING,
PER006 TYPE STRING,
PER007 TYPE STRING,
PER008 TYPE STRING,
PER009 TYPE STRING,
PER010 TYPE STRING,
PER011 TYPE STRING,
PER012 TYPE STRING,
PER013 TYPE STRING,
PER014 TYPE STRING,
PER015 TYPE STRING,
PER016 TYPE STRING,
PER017 TYPE STRING,
PER018 TYPE STRING,
PER019 TYPE STRING,
PER020 TYPE STRING,
PER021 TYPE STRING,
PER022 TYPE STRING,
PER023 TYPE STRING,
PER024 TYPE STRING,
PER025 TYPE STRING,
PER026 TYPE STRING,
PER027 TYPE STRING,
PER028 TYPE STRING,
PER029 TYPE STRING,
PER030 TYPE STRING,
PER031 TYPE STRING,
PER032 TYPE STRING,
PER033 TYPE STRING,
PER034 TYPE STRING,
PER035 TYPE STRING,
PER036 TYPE STRING,
PER037 TYPE STRING,
PER038 TYPE STRING,
PER039 TYPE STRING,
PER040 TYPE STRING,
PER041 TYPE STRING,
PER042 TYPE STRING,
PER043 TYPE STRING,
PER044 TYPE STRING,
PER045 TYPE STRING,
PER046 TYPE STRING,
PER047 TYPE STRING,
PER048 TYPE STRING,
PER049 TYPE STRING,
PER050 TYPE STRING,
PER051 TYPE STRING,
PER052 TYPE STRING,
PER053 TYPE STRING,
PER054 TYPE STRING,
PER055 TYPE STRING,
PER056 TYPE STRING,
PER057 TYPE STRING,
PER058 TYPE STRING,
PER059 TYPE STRING,
PER060 TYPE STRING,
SUMME TYPE STRING,
SPALTE0 TYPE STRING,
VEFLD TYPE STRING,
OPERA TYPE STRING,
VEMUST TYPE STRING,
FLD001 TYPE STRING,
FLD002 TYPE STRING,
FLD003 TYPE STRING,
FLD004 TYPE STRING,
FLD005 TYPE STRING,
FLD006 TYPE STRING,
FLD007 TYPE STRING,
FLD008 TYPE STRING,
FLD009 TYPE STRING,
FLD010 TYPE STRING,
FLD011 TYPE STRING,
FLD012 TYPE STRING,
FLD013 TYPE STRING,
FLD014 TYPE STRING,
FLD015 TYPE STRING,
FLD016 TYPE STRING,
FLD017 TYPE STRING,
FLD018 TYPE STRING,
FLD019 TYPE STRING,
FLD020 TYPE STRING,
FLD021 TYPE STRING,
FLD022 TYPE STRING,
FLD023 TYPE STRING,
FLD024 TYPE STRING,
FLD025 TYPE STRING,
FLD026 TYPE STRING,
FLD027 TYPE STRING,
FLD028 TYPE STRING,
FLD029 TYPE STRING,
FLD030 TYPE STRING,
FLD031 TYPE STRING,
FLD032 TYPE STRING,
FLD033 TYPE STRING,
FLD034 TYPE STRING,
FLD035 TYPE STRING,
FLD036 TYPE STRING,
FLD037 TYPE STRING,
FLD038 TYPE STRING,
FLD039 TYPE STRING,
FLD040 TYPE STRING,
FLD041 TYPE STRING,
FLD042 TYPE STRING,
FLD043 TYPE STRING,
FLD044 TYPE STRING,
FLD045 TYPE STRING,
FLD046 TYPE STRING,
FLD047 TYPE STRING,
FLD048 TYPE STRING,
FLD049 TYPE STRING,
FLD050 TYPE STRING,
FLD051 TYPE STRING,
FLD052 TYPE STRING,
FLD053 TYPE STRING,
FLD054 TYPE STRING,
FLD055 TYPE STRING,
FLD056 TYPE STRING,
FLD057 TYPE STRING,
FLD058 TYPE STRING,
FLD059 TYPE STRING,
FLD060 TYPE STRING,END OF T_EKKO_STR. DATA: WA_/SAPAPO/RMCP4_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_/SAPAPO/RMCP4_STR-TXTSUM sy-vline
WA_/SAPAPO/RMCP4_STR-TXTSP0 sy-vline
WA_/SAPAPO/RMCP4_STR-TXTFLD sy-vline
WA_/SAPAPO/RMCP4_STR-TXTOP sy-vline
WA_/SAPAPO/RMCP4_STR-TXTMUS sy-vline
WA_/SAPAPO/RMCP4_STR-PER001 sy-vline
WA_/SAPAPO/RMCP4_STR-PER002 sy-vline
WA_/SAPAPO/RMCP4_STR-PER003 sy-vline
WA_/SAPAPO/RMCP4_STR-PER004 sy-vline
WA_/SAPAPO/RMCP4_STR-PER005 sy-vline
WA_/SAPAPO/RMCP4_STR-PER006 sy-vline
WA_/SAPAPO/RMCP4_STR-PER007 sy-vline
WA_/SAPAPO/RMCP4_STR-PER008 sy-vline
WA_/SAPAPO/RMCP4_STR-PER009 sy-vline
WA_/SAPAPO/RMCP4_STR-PER010 sy-vline
WA_/SAPAPO/RMCP4_STR-PER011 sy-vline
WA_/SAPAPO/RMCP4_STR-PER012 sy-vline
WA_/SAPAPO/RMCP4_STR-PER013 sy-vline
WA_/SAPAPO/RMCP4_STR-PER014 sy-vline
WA_/SAPAPO/RMCP4_STR-PER015 sy-vline
WA_/SAPAPO/RMCP4_STR-PER016 sy-vline
WA_/SAPAPO/RMCP4_STR-PER017 sy-vline
WA_/SAPAPO/RMCP4_STR-PER018 sy-vline
WA_/SAPAPO/RMCP4_STR-PER019 sy-vline
WA_/SAPAPO/RMCP4_STR-PER020 sy-vline
WA_/SAPAPO/RMCP4_STR-PER021 sy-vline
WA_/SAPAPO/RMCP4_STR-PER022 sy-vline
WA_/SAPAPO/RMCP4_STR-PER023 sy-vline
WA_/SAPAPO/RMCP4_STR-PER024 sy-vline
WA_/SAPAPO/RMCP4_STR-PER025 sy-vline
WA_/SAPAPO/RMCP4_STR-PER026 sy-vline
WA_/SAPAPO/RMCP4_STR-PER027 sy-vline
WA_/SAPAPO/RMCP4_STR-PER028 sy-vline
WA_/SAPAPO/RMCP4_STR-PER029 sy-vline
WA_/SAPAPO/RMCP4_STR-PER030 sy-vline
WA_/SAPAPO/RMCP4_STR-PER031 sy-vline
WA_/SAPAPO/RMCP4_STR-PER032 sy-vline
WA_/SAPAPO/RMCP4_STR-PER033 sy-vline
WA_/SAPAPO/RMCP4_STR-PER034 sy-vline
WA_/SAPAPO/RMCP4_STR-PER035 sy-vline
WA_/SAPAPO/RMCP4_STR-PER036 sy-vline
WA_/SAPAPO/RMCP4_STR-PER037 sy-vline
WA_/SAPAPO/RMCP4_STR-PER038 sy-vline
WA_/SAPAPO/RMCP4_STR-PER039 sy-vline
WA_/SAPAPO/RMCP4_STR-PER040 sy-vline
WA_/SAPAPO/RMCP4_STR-PER041 sy-vline
WA_/SAPAPO/RMCP4_STR-PER042 sy-vline
WA_/SAPAPO/RMCP4_STR-PER043 sy-vline
WA_/SAPAPO/RMCP4_STR-PER044 sy-vline
WA_/SAPAPO/RMCP4_STR-PER045 sy-vline
WA_/SAPAPO/RMCP4_STR-PER046 sy-vline
WA_/SAPAPO/RMCP4_STR-PER047 sy-vline
WA_/SAPAPO/RMCP4_STR-PER048 sy-vline
WA_/SAPAPO/RMCP4_STR-PER049 sy-vline
WA_/SAPAPO/RMCP4_STR-PER050 sy-vline
WA_/SAPAPO/RMCP4_STR-PER051 sy-vline
WA_/SAPAPO/RMCP4_STR-PER052 sy-vline
WA_/SAPAPO/RMCP4_STR-PER053 sy-vline
WA_/SAPAPO/RMCP4_STR-PER054 sy-vline
WA_/SAPAPO/RMCP4_STR-PER055 sy-vline
WA_/SAPAPO/RMCP4_STR-PER056 sy-vline
WA_/SAPAPO/RMCP4_STR-PER057 sy-vline
WA_/SAPAPO/RMCP4_STR-PER058 sy-vline
WA_/SAPAPO/RMCP4_STR-PER059 sy-vline
WA_/SAPAPO/RMCP4_STR-PER060 sy-vline
WA_/SAPAPO/RMCP4_STR-SUMME sy-vline
WA_/SAPAPO/RMCP4_STR-SPALTE0 sy-vline
WA_/SAPAPO/RMCP4_STR-VEFLD sy-vline
WA_/SAPAPO/RMCP4_STR-OPERA sy-vline
WA_/SAPAPO/RMCP4_STR-VEMUST sy-vline
WA_/SAPAPO/RMCP4_STR-FLD001 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD002 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD003 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD004 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD005 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD006 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD007 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD008 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD009 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD010 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD011 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD012 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD013 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD014 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD015 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD016 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD017 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD018 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD019 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD020 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD021 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD022 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD023 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD024 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD025 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD026 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD027 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD028 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD029 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD030 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD031 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD032 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD033 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD034 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD035 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD036 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD037 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD038 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD039 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD040 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD041 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD042 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD043 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD044 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD045 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD046 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD047 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD048 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD049 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD050 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD051 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD052 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD053 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD054 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD055 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD056 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD057 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD058 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD059 sy-vline
WA_/SAPAPO/RMCP4_STR-FLD060 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.