ABAP Select data from SAP table HCMT_BSP_PA_DE_R0650 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 HCMT_BSP_PA_DE_R0650 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 HCMT_BSP_PA_DE_R0650. 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 HCMT_BSP_PA_DE_R0650 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_HCMT_BSP_PA_DE_R0650 TYPE STANDARD TABLE OF HCMT_BSP_PA_DE_R0650,
      WA_HCMT_BSP_PA_DE_R0650 TYPE HCMT_BSP_PA_DE_R0650,
      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: <HCMT_BSP_PA_DE_R0650> TYPE HCMT_BSP_PA_DE_R0650.

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

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM HCMT_BSP_PA_DE_R0650
  INTO TABLE IT_HCMT_BSP_PA_DE_R0650.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM HCMT_BSP_PA_DE_R0650
*  INTO TABLE @DATA(IT_HCMT_BSP_PA_DE_R06502).
*--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_HCMT_BSP_PA_DE_R0650 INDEX 1 INTO DATA(WA_HCMT_BSP_PA_DE_R06502).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_HCMT_BSP_PA_DE_R0650 ASSIGNING <HCMT_BSP_PA_DE_R0650>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<HCMT_BSP_PA_DE_R0650>-OBJECT_KEY = 1.
<HCMT_BSP_PA_DE_R0650>-PERNR = 1.
<HCMT_BSP_PA_DE_R0650>-AEDTM = 1.
<HCMT_BSP_PA_DE_R0650>-UNAME = 1.
<HCMT_BSP_PA_DE_R0650>-SPRPS = 1.
ENDLOOP.

LOOP AT IT_HCMT_BSP_PA_DE_R0650 INTO WA_HCMT_BSP_PA_DE_R0650.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_HCMT_BSP_PA_DE_R0650-SPRTX, sy-vline,
WA_HCMT_BSP_PA_DE_R0650-ITBLD, sy-vline,
WA_HCMT_BSP_PA_DE_R0650-ITXEX, sy-vline,
WA_HCMT_BSP_PA_DE_R0650-BEGDA, sy-vline,
WA_HCMT_BSP_PA_DE_R0650-ENDDA, sy-vline,
WA_HCMT_BSP_PA_DE_R0650-SUBTY, sy-vline.
ENDLOOP. *Add any further fields from structure WA_HCMT_BSP_PA_DE_R0650 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_HCMT_BSP_PA_DE_R0650 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_HCMT_BSP_PA_DE_R0650 INTO WA_HCMT_BSP_PA_DE_R0650. *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_HCMT_BSP_PA_DE_R0650_STR,
OBJECT_KEY TYPE STRING,
PERNR TYPE STRING,
AEDTM TYPE STRING,
UNAME TYPE STRING,
SPRPS TYPE STRING,
SPRTX TYPE STRING,
ITBLD TYPE STRING,
ITXEX TYPE STRING,
BEGDA TYPE STRING,
ENDDA TYPE STRING,
SUBTY TYPE STRING,
STEXT TYPE STRING,
WAERS TYPE STRING,
FBEG1 TYPE STRING,
FBIS1 TYPE STRING,
FEND1 TYPE STRING,
FGRD1 TYPE STRING,
FBEG2 TYPE STRING,
FBIS2 TYPE STRING,
FEND2 TYPE STRING,
FGRD2 TYPE STRING,
FBEG3 TYPE STRING,
FBIS3 TYPE STRING,
FEND3 TYPE STRING,
FGRD3 TYPE STRING,
GEFUE TYPE STRING,
KPATL TYPE STRING,
KPATL_TXT TYPE STRING,
SPMIN TYPE STRING,
KDGAM TYPE STRING,
KDZUM TYPE STRING,
KDGRD TYPE STRING,
KDSCR TYPE STRING,
KDZUS TYPE STRING,
KDWID TYPE STRING,
KDSCH TYPE STRING,
KDWIT TYPE STRING,
BFSCR TYPE STRING,
BVAVH TYPE STRING,
BVAVG TYPE STRING,
BBKDG TYPE STRING,
KDGSK TYPE STRING,
DATFR TYPE STRING,
AMDAT TYPE STRING,
KDGZS TYPE STRING,
AVVRL TYPE STRING,
AVVRB TYPE STRING,
MIND6 TYPE STRING,
BVAVZ TYPE STRING,
HKDAM TYPE STRING,
HKDZM TYPE STRING,
HKDBB TYPE STRING,
HKDVW TYPE STRING,
FRSTW TYPE STRING,
FRSTW_EV TYPE STRING,
FRSTW_AB TYPE STRING,
ABPRF TYPE STRING,
APDAT TYPE STRING,
TAEUU TYPE STRING,
WAE03 TYPE STRING,
TWZUU TYPE STRING,
TWZUU_TXT TYPE STRING,
TEZUU TYPE STRING,
WAE04 TYPE STRING,
HAURJ TYPE STRING,
HAURJ_TXT TYPE STRING,
HAURB TYPE STRING,
HAURE TYPE STRING,
WAE02 TYPE STRING,
HABEZ TYPE STRING,
BSBEG TYPE STRING,
BSBIS TYPE STRING,
BSEND TYPE STRING,
BSAZT TYPE STRING,
ABEG1 TYPE STRING,
ABIS1 TYPE STRING,
AEND1 TYPE STRING,
ASTW1 TYPE STRING,
AZGRD TYPE STRING,
ABEG2 TYPE STRING,
ABIS2 TYPE STRING,
AEND2 TYPE STRING,
ASTW2 TYPE STRING,
AZGR2 TYPE STRING,
VVOLL TYPE STRING,
ZULEI TYPE STRING,
ZLGRD TYPE STRING,
WEIAE TYPE STRING,
WADAT TYPE STRING,
VRUGD TYPE STRING,
VRBEG TYPE STRING,
VRPRZ TYPE STRING,
VRPRZ_TXT TYPE STRING,
AUFBE TYPE STRING,
ABF05 TYPE STRING,
ABFGR TYPE STRING,
KDOAU TYPE STRING,
KDON0 TYPE STRING,
KDON1 TYPE STRING,
KDON2 TYPE STRING,
KDOGR1 TYPE STRING,
KDON3 TYPE STRING,
KDOGR2 TYPE STRING,
KDOA0 TYPE STRING,
KDOA1 TYPE STRING,
KDONO TYPE STRING,
KDOGR TYPE STRING,
KDOAF TYPE STRING,
HWAA1 TYPE STRING,
HWAA2 TYPE STRING,
HWAA3 TYPE STRING,
HWAA4 TYPE STRING,
ASNAM TYPE STRING,
ASVNM TYPE STRING,
ASARA TYPE STRING,
ASKNR TYPE STRING,
FMEZ1 TYPE STRING,
FJEZ1 TYPE STRING,
EART1 TYPE STRING,
EART1_TEXT TYPE STRING,
FMEZ2 TYPE STRING,
FJEZ2 TYPE STRING,
EART2 TYPE STRING,
EART2_TEXT TYPE STRING,
NRBDG TYPE STRING,
STDLOHN TYPE STRING,
KTRFZUG TYPE STRING,
VORSCH_BTG TYPE STRING,
VORSCH_DAT TYPE STRING,
KBNAM TYPE STRING,
KBVNM TYPE STRING,
KGNUM TYPE STRING,
ADRS1 TYPE STRING,
ADRS2 TYPE STRING,
ADRS3 TYPE STRING,
TFHOE TYPE STRING,
TFBTG TYPE STRING,
TFZTR TYPE STRING,
HAAUS TYPE STRING,
HAABL TYPE STRING,
KUGJN TYPE STRING,
KUGFA TYPE STRING,END OF T_EKKO_STR. DATA: WA_HCMT_BSP_PA_DE_R0650_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_HCMT_BSP_PA_DE_R0650_STR-OBJECT_KEY sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-PERNR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AEDTM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-UNAME sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-SPRPS sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-SPRTX sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ITBLD sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ITXEX sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BEGDA sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ENDDA sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-SUBTY sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-STEXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-WAERS sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FBEG1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FBIS1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FEND1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FGRD1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FBEG2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FBIS2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FEND2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FGRD2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FBEG3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FBIS3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FEND3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FGRD3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-GEFUE sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KPATL sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KPATL_TXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-SPMIN sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDGAM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDZUM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDGRD sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDSCR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDZUS sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDWID sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDSCH sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDWIT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BFSCR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BVAVH sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BVAVG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BBKDG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDGSK sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-DATFR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AMDAT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDGZS sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AVVRL sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AVVRB sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-MIND6 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BVAVZ sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HKDAM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HKDZM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HKDBB sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HKDVW sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FRSTW sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FRSTW_EV sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FRSTW_AB sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABPRF sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-APDAT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TAEUU sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-WAE03 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TWZUU sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TWZUU_TXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TEZUU sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-WAE04 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HAURJ sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HAURJ_TXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HAURB sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HAURE sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-WAE02 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HABEZ sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BSBEG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BSBIS sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BSEND sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-BSAZT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABEG1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABIS1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AEND1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ASTW1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AZGRD sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABEG2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABIS2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AEND2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ASTW2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AZGR2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VVOLL sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ZULEI sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ZLGRD sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-WEIAE sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-WADAT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VRUGD sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VRBEG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VRPRZ sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VRPRZ_TXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-AUFBE sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABF05 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ABFGR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOAU sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDON0 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDON1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDON2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOGR1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDON3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOGR2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOA0 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOA1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDONO sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOGR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KDOAF sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HWAA1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HWAA2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HWAA3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HWAA4 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ASNAM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ASVNM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ASARA sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ASKNR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FMEZ1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FJEZ1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-EART1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-EART1_TEXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FMEZ2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-FJEZ2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-EART2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-EART2_TEXT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-NRBDG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-STDLOHN sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KTRFZUG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VORSCH_BTG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-VORSCH_DAT sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KBNAM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KBVNM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KGNUM sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ADRS1 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ADRS2 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-ADRS3 sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TFHOE sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TFBTG sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-TFZTR sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HAAUS sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-HAABL sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KUGJN sy-vline
WA_HCMT_BSP_PA_DE_R0650_STR-KUGFA sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.