ABAP Select data from SAP table E1HR_ITS 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 E1HR_ITS 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 E1HR_ITS. 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 E1HR_ITS 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_E1HR_ITS TYPE STANDARD TABLE OF E1HR_ITS,
      WA_E1HR_ITS TYPE E1HR_ITS,
      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: <E1HR_ITS> TYPE E1HR_ITS.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM E1HR_ITS
*  INTO TABLE @DATA(IT_E1HR_ITS2).
*--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_E1HR_ITS INDEX 1 INTO DATA(WA_E1HR_ITS2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_E1HR_ITS ASSIGNING <E1HR_ITS>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<E1HR_ITS>-BEGDA = 1.
<E1HR_ITS>-ENDDA = 1.
<E1HR_ITS>-CDINP = 1.
<E1HR_ITS>-REGIO = 1.
<E1HR_ITS>-TXREG = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_E1HR_ITS-REGIOF24, sy-vline,
WA_E1HR_ITS-NUDIR, sy-vline,
WA_E1HR_ITS-NUSSL, sy-vline,
WA_E1HR_ITS-CDUSL, sy-vline,
WA_E1HR_ITS-TXUSL, sy-vline,
WA_E1HR_ITS-TPA1, sy-vline.
ENDLOOP. *Add any further fields from structure WA_E1HR_ITS 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_E1HR_ITS 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_E1HR_ITS INTO WA_E1HR_ITS. *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_E1HR_ITS_STR,
BEGDA TYPE STRING,
ENDDA TYPE STRING,
CDINP TYPE STRING,
REGIO TYPE STRING,
TXREG TYPE STRING,
REGIOF24 TYPE STRING,
NUDIR TYPE STRING,
NUSSL TYPE STRING,
CDUSL TYPE STRING,
TXUSL TYPE STRING,
TPA1 TYPE STRING,
CDC1 TYPE STRING,
ENTEC1 TYPE STRING,
CASSA1 TYPE STRING,
TPA2 TYPE STRING,
CDC2 TYPE STRING,
ENTEC2 TYPE STRING,
CASSA2 TYPE STRING,
TPA3 TYPE STRING,
CDC3 TYPE STRING,
ENTEC3 TYPE STRING,
CASSA3 TYPE STRING,
TPA4 TYPE STRING,
CDC4 TYPE STRING,
ENTEC4 TYPE STRING,
CASSA4 TYPE STRING,
TPA5 TYPE STRING,
CDC5 TYPE STRING,
ENTEC5 TYPE STRING,
CASSA5 TYPE STRING,
TPA6 TYPE STRING,
CDC6 TYPE STRING,
ENTEC6 TYPE STRING,
CASSA6 TYPE STRING,
TPA7 TYPE STRING,
CDC7 TYPE STRING,
ENTEC7 TYPE STRING,
CASSA7 TYPE STRING,
TPA8 TYPE STRING,
CDC8 TYPE STRING,
ENTEC8 TYPE STRING,
CASSA8 TYPE STRING,
TPA9 TYPE STRING,
CDC9 TYPE STRING,
ENTEC9 TYPE STRING,
CASSA9 TYPE STRING,
TPA10 TYPE STRING,
CDC10 TYPE STRING,
ENTEC10 TYPE STRING,
CASSA10 TYPE STRING,
TPA11 TYPE STRING,
CDC11 TYPE STRING,
ENTEC11 TYPE STRING,
CASSA11 TYPE STRING,
TPA12 TYPE STRING,
CDC12 TYPE STRING,
ENTEC12 TYPE STRING,
CASSA12 TYPE STRING,
TPA13 TYPE STRING,
CDC13 TYPE STRING,
ENTEC13 TYPE STRING,
CASSA13 TYPE STRING,
TPA14 TYPE STRING,
CDC14 TYPE STRING,
ENTEC14 TYPE STRING,
CASSA14 TYPE STRING,
TPA15 TYPE STRING,
CDC15 TYPE STRING,
ENTEC15 TYPE STRING,
CASSA15 TYPE STRING,
TPA16 TYPE STRING,
CDC16 TYPE STRING,
ENTEC16 TYPE STRING,
CASSA16 TYPE STRING,
TPA17 TYPE STRING,
CDC17 TYPE STRING,
ENTEC17 TYPE STRING,
CASSA17 TYPE STRING,
TPA18 TYPE STRING,
CDC18 TYPE STRING,
ENTEC18 TYPE STRING,
CASSA18 TYPE STRING,
TPA19 TYPE STRING,
CDC19 TYPE STRING,
ENTEC19 TYPE STRING,
CASSA19 TYPE STRING,
TPA20 TYPE STRING,
CDC20 TYPE STRING,
ENTEC20 TYPE STRING,
CASSA20 TYPE STRING,
TPA21 TYPE STRING,
CDC21 TYPE STRING,
ENTEC21 TYPE STRING,
CASSA21 TYPE STRING,
TPA22 TYPE STRING,
CDC22 TYPE STRING,
ENTEC22 TYPE STRING,
CASSA22 TYPE STRING,
TPA23 TYPE STRING,
CDC23 TYPE STRING,
ENTEC23 TYPE STRING,
CASSA23 TYPE STRING,
TPA24 TYPE STRING,
CDC24 TYPE STRING,
ENTEC24 TYPE STRING,
CASSA24 TYPE STRING,
TPA25 TYPE STRING,
CDC25 TYPE STRING,
ENTEC25 TYPE STRING,
CASSA25 TYPE STRING,
TPA26 TYPE STRING,
CDC26 TYPE STRING,
ENTEC26 TYPE STRING,
CASSA26 TYPE STRING,
TPA27 TYPE STRING,
CDC27 TYPE STRING,
ENTEC27 TYPE STRING,
CASSA27 TYPE STRING,
TPA28 TYPE STRING,
CDC28 TYPE STRING,
ENTEC28 TYPE STRING,
CASSA28 TYPE STRING,
TPA29 TYPE STRING,
CDC29 TYPE STRING,
ENTEC29 TYPE STRING,
CASSA29 TYPE STRING,
TPA30 TYPE STRING,
CDC30 TYPE STRING,
ENTEC30 TYPE STRING,
CASSA30 TYPE STRING,END OF T_EKKO_STR. DATA: WA_E1HR_ITS_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_E1HR_ITS_STR-BEGDA sy-vline
WA_E1HR_ITS_STR-ENDDA sy-vline
WA_E1HR_ITS_STR-CDINP sy-vline
WA_E1HR_ITS_STR-REGIO sy-vline
WA_E1HR_ITS_STR-TXREG sy-vline
WA_E1HR_ITS_STR-REGIOF24 sy-vline
WA_E1HR_ITS_STR-NUDIR sy-vline
WA_E1HR_ITS_STR-NUSSL sy-vline
WA_E1HR_ITS_STR-CDUSL sy-vline
WA_E1HR_ITS_STR-TXUSL sy-vline
WA_E1HR_ITS_STR-TPA1 sy-vline
WA_E1HR_ITS_STR-CDC1 sy-vline
WA_E1HR_ITS_STR-ENTEC1 sy-vline
WA_E1HR_ITS_STR-CASSA1 sy-vline
WA_E1HR_ITS_STR-TPA2 sy-vline
WA_E1HR_ITS_STR-CDC2 sy-vline
WA_E1HR_ITS_STR-ENTEC2 sy-vline
WA_E1HR_ITS_STR-CASSA2 sy-vline
WA_E1HR_ITS_STR-TPA3 sy-vline
WA_E1HR_ITS_STR-CDC3 sy-vline
WA_E1HR_ITS_STR-ENTEC3 sy-vline
WA_E1HR_ITS_STR-CASSA3 sy-vline
WA_E1HR_ITS_STR-TPA4 sy-vline
WA_E1HR_ITS_STR-CDC4 sy-vline
WA_E1HR_ITS_STR-ENTEC4 sy-vline
WA_E1HR_ITS_STR-CASSA4 sy-vline
WA_E1HR_ITS_STR-TPA5 sy-vline
WA_E1HR_ITS_STR-CDC5 sy-vline
WA_E1HR_ITS_STR-ENTEC5 sy-vline
WA_E1HR_ITS_STR-CASSA5 sy-vline
WA_E1HR_ITS_STR-TPA6 sy-vline
WA_E1HR_ITS_STR-CDC6 sy-vline
WA_E1HR_ITS_STR-ENTEC6 sy-vline
WA_E1HR_ITS_STR-CASSA6 sy-vline
WA_E1HR_ITS_STR-TPA7 sy-vline
WA_E1HR_ITS_STR-CDC7 sy-vline
WA_E1HR_ITS_STR-ENTEC7 sy-vline
WA_E1HR_ITS_STR-CASSA7 sy-vline
WA_E1HR_ITS_STR-TPA8 sy-vline
WA_E1HR_ITS_STR-CDC8 sy-vline
WA_E1HR_ITS_STR-ENTEC8 sy-vline
WA_E1HR_ITS_STR-CASSA8 sy-vline
WA_E1HR_ITS_STR-TPA9 sy-vline
WA_E1HR_ITS_STR-CDC9 sy-vline
WA_E1HR_ITS_STR-ENTEC9 sy-vline
WA_E1HR_ITS_STR-CASSA9 sy-vline
WA_E1HR_ITS_STR-TPA10 sy-vline
WA_E1HR_ITS_STR-CDC10 sy-vline
WA_E1HR_ITS_STR-ENTEC10 sy-vline
WA_E1HR_ITS_STR-CASSA10 sy-vline
WA_E1HR_ITS_STR-TPA11 sy-vline
WA_E1HR_ITS_STR-CDC11 sy-vline
WA_E1HR_ITS_STR-ENTEC11 sy-vline
WA_E1HR_ITS_STR-CASSA11 sy-vline
WA_E1HR_ITS_STR-TPA12 sy-vline
WA_E1HR_ITS_STR-CDC12 sy-vline
WA_E1HR_ITS_STR-ENTEC12 sy-vline
WA_E1HR_ITS_STR-CASSA12 sy-vline
WA_E1HR_ITS_STR-TPA13 sy-vline
WA_E1HR_ITS_STR-CDC13 sy-vline
WA_E1HR_ITS_STR-ENTEC13 sy-vline
WA_E1HR_ITS_STR-CASSA13 sy-vline
WA_E1HR_ITS_STR-TPA14 sy-vline
WA_E1HR_ITS_STR-CDC14 sy-vline
WA_E1HR_ITS_STR-ENTEC14 sy-vline
WA_E1HR_ITS_STR-CASSA14 sy-vline
WA_E1HR_ITS_STR-TPA15 sy-vline
WA_E1HR_ITS_STR-CDC15 sy-vline
WA_E1HR_ITS_STR-ENTEC15 sy-vline
WA_E1HR_ITS_STR-CASSA15 sy-vline
WA_E1HR_ITS_STR-TPA16 sy-vline
WA_E1HR_ITS_STR-CDC16 sy-vline
WA_E1HR_ITS_STR-ENTEC16 sy-vline
WA_E1HR_ITS_STR-CASSA16 sy-vline
WA_E1HR_ITS_STR-TPA17 sy-vline
WA_E1HR_ITS_STR-CDC17 sy-vline
WA_E1HR_ITS_STR-ENTEC17 sy-vline
WA_E1HR_ITS_STR-CASSA17 sy-vline
WA_E1HR_ITS_STR-TPA18 sy-vline
WA_E1HR_ITS_STR-CDC18 sy-vline
WA_E1HR_ITS_STR-ENTEC18 sy-vline
WA_E1HR_ITS_STR-CASSA18 sy-vline
WA_E1HR_ITS_STR-TPA19 sy-vline
WA_E1HR_ITS_STR-CDC19 sy-vline
WA_E1HR_ITS_STR-ENTEC19 sy-vline
WA_E1HR_ITS_STR-CASSA19 sy-vline
WA_E1HR_ITS_STR-TPA20 sy-vline
WA_E1HR_ITS_STR-CDC20 sy-vline
WA_E1HR_ITS_STR-ENTEC20 sy-vline
WA_E1HR_ITS_STR-CASSA20 sy-vline
WA_E1HR_ITS_STR-TPA21 sy-vline
WA_E1HR_ITS_STR-CDC21 sy-vline
WA_E1HR_ITS_STR-ENTEC21 sy-vline
WA_E1HR_ITS_STR-CASSA21 sy-vline
WA_E1HR_ITS_STR-TPA22 sy-vline
WA_E1HR_ITS_STR-CDC22 sy-vline
WA_E1HR_ITS_STR-ENTEC22 sy-vline
WA_E1HR_ITS_STR-CASSA22 sy-vline
WA_E1HR_ITS_STR-TPA23 sy-vline
WA_E1HR_ITS_STR-CDC23 sy-vline
WA_E1HR_ITS_STR-ENTEC23 sy-vline
WA_E1HR_ITS_STR-CASSA23 sy-vline
WA_E1HR_ITS_STR-TPA24 sy-vline
WA_E1HR_ITS_STR-CDC24 sy-vline
WA_E1HR_ITS_STR-ENTEC24 sy-vline
WA_E1HR_ITS_STR-CASSA24 sy-vline
WA_E1HR_ITS_STR-TPA25 sy-vline
WA_E1HR_ITS_STR-CDC25 sy-vline
WA_E1HR_ITS_STR-ENTEC25 sy-vline
WA_E1HR_ITS_STR-CASSA25 sy-vline
WA_E1HR_ITS_STR-TPA26 sy-vline
WA_E1HR_ITS_STR-CDC26 sy-vline
WA_E1HR_ITS_STR-ENTEC26 sy-vline
WA_E1HR_ITS_STR-CASSA26 sy-vline
WA_E1HR_ITS_STR-TPA27 sy-vline
WA_E1HR_ITS_STR-CDC27 sy-vline
WA_E1HR_ITS_STR-ENTEC27 sy-vline
WA_E1HR_ITS_STR-CASSA27 sy-vline
WA_E1HR_ITS_STR-TPA28 sy-vline
WA_E1HR_ITS_STR-CDC28 sy-vline
WA_E1HR_ITS_STR-ENTEC28 sy-vline
WA_E1HR_ITS_STR-CASSA28 sy-vline
WA_E1HR_ITS_STR-TPA29 sy-vline
WA_E1HR_ITS_STR-CDC29 sy-vline
WA_E1HR_ITS_STR-ENTEC29 sy-vline
WA_E1HR_ITS_STR-CASSA29 sy-vline
WA_E1HR_ITS_STR-TPA30 sy-vline
WA_E1HR_ITS_STR-CDC30 sy-vline
WA_E1HR_ITS_STR-ENTEC30 sy-vline
WA_E1HR_ITS_STR-CASSA30 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.