ABAP Select data from SAP table HRPAYDE_EHAK_2016 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 HRPAYDE_EHAK_2016 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 HRPAYDE_EHAK_2016. 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 HRPAYDE_EHAK_2016 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_HRPAYDE_EHAK_2016 TYPE STANDARD TABLE OF HRPAYDE_EHAK_2016,
      WA_HRPAYDE_EHAK_2016 TYPE HRPAYDE_EHAK_2016,
      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: <HRPAYDE_EHAK_2016> TYPE HRPAYDE_EHAK_2016.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM HRPAYDE_EHAK_2016
*  INTO TABLE @DATA(IT_HRPAYDE_EHAK_20162).
*--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_HRPAYDE_EHAK_2016 INDEX 1 INTO DATA(WA_HRPAYDE_EHAK_20162).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_HRPAYDE_EHAK_2016 ASSIGNING <HRPAYDE_EHAK_2016>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<HRPAYDE_EHAK_2016>-PERNR = 1.
<HRPAYDE_EHAK_2016>-FPPER = 1.
<HRPAYDE_EHAK_2016>-WERKS = 1.
<HRPAYDE_EHAK_2016>-BTRTL = 1.
<HRPAYDE_EHAK_2016>-WERKS_ABSENDER = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_HRPAYDE_EHAK_2016-BTRTL_ABSENDER, sy-vline,
WA_HRPAYDE_EHAK_2016-STAT_BTRNR, sy-vline,
WA_HRPAYDE_EHAK_2016-WERKS_TEXT, sy-vline,
WA_HRPAYDE_EHAK_2016-BTRTL_TEXT, sy-vline,
WA_HRPAYDE_EHAK_2016-BUKRS, sy-vline,
WA_HRPAYDE_EHAK_2016-PERSG, sy-vline.
ENDLOOP. *Add any further fields from structure WA_HRPAYDE_EHAK_2016 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_HRPAYDE_EHAK_2016 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_HRPAYDE_EHAK_2016 INTO WA_HRPAYDE_EHAK_2016. *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_HRPAYDE_EHAK_2016_STR,
PERNR TYPE STRING,
FPPER TYPE STRING,
WERKS TYPE STRING,
BTRTL TYPE STRING,
WERKS_ABSENDER TYPE STRING,
BTRTL_ABSENDER TYPE STRING,
STAT_BTRNR TYPE STRING,
WERKS_TEXT TYPE STRING,
BTRTL_TEXT TYPE STRING,
BUKRS TYPE STRING,
PERSG TYPE STRING,
PERSK TYPE STRING,
ANSTA TYPE STRING,
ANSTA_TEXT TYPE STRING,
TYPE TYPE STRING,
TYPE_TEXT TYPE STRING,
TYPE_ANZ TYPE STRING,
WOKNZ TYPE STRING,
BETRG120 TYPE STRING,
BETRG121 TYPE STRING,
BETRG122 TYPE STRING,
BETRG123 TYPE STRING,
BETRG124 TYPE STRING,
BETRG125 TYPE STRING,
BETRG126 TYPE STRING,
BETRG127 TYPE STRING,
BETRG128 TYPE STRING,
BETRG129 TYPE STRING,
BETRG130 TYPE STRING,
BETRG132 TYPE STRING,
BETRG133 TYPE STRING,
BETRG134 TYPE STRING,
BETRG135 TYPE STRING,
BETRG147 TYPE STRING,
BETRG148 TYPE STRING,
BETRG149 TYPE STRING,
BETRG150 TYPE STRING,
BETRG151 TYPE STRING,
BETRG152 TYPE STRING,
BETRG153 TYPE STRING,
BETRG154 TYPE STRING,
BETRG155 TYPE STRING,
BETRG156 TYPE STRING,
BETRG157 TYPE STRING,
BETRG158 TYPE STRING,
BETRG159 TYPE STRING,
BETRG160 TYPE STRING,
BETRG161 TYPE STRING,
BETRG162 TYPE STRING,
BETRG163 TYPE STRING,
BETRG164 TYPE STRING,
BETRG220 TYPE STRING,
BETRG221 TYPE STRING,
BETRG222 TYPE STRING,
BETRG223 TYPE STRING,
BETRG224 TYPE STRING,
BETRG277 TYPE STRING,
BETRG230 TYPE STRING,
BETRG231 TYPE STRING,
BETRG240 TYPE STRING,
BETRG241 TYPE STRING,
BETRG250 TYPE STRING,
BETRG251 TYPE STRING,
BETRG260 TYPE STRING,
BETRG261 TYPE STRING,
BETRG270 TYPE STRING,
BETRG271 TYPE STRING,
ANZHL083 TYPE STRING,
ANZHL084 TYPE STRING,
ANZHL085 TYPE STRING,
ANZHL086 TYPE STRING,
ANZHL087 TYPE STRING,
ANZHL088 TYPE STRING,
ANZHL089 TYPE STRING,
ANZHL090 TYPE STRING,
ANZHL091 TYPE STRING,
ANZHL092 TYPE STRING,
ANZHL093 TYPE STRING,
ANZHL094 TYPE STRING,
ANZHL095 TYPE STRING,
ANZHL096 TYPE STRING,
ANZHL300 TYPE STRING,
ANZHL301 TYPE STRING,
ANZHL302 TYPE STRING,
ANZHL303 TYPE STRING,
ANZHL304 TYPE STRING,
ANZHL305 TYPE STRING,
ANZHL306 TYPE STRING,
ANZHL307 TYPE STRING,
ANZHL311 TYPE STRING,
ANZHL312 TYPE STRING,
ANZHL313 TYPE STRING,
ANZHL317 TYPE STRING,
ANZHL318 TYPE STRING,
ANZHL319 TYPE STRING,
ANZHL320 TYPE STRING,
ANZHL321 TYPE STRING,
ANZHL322 TYPE STRING,
ANZHL323 TYPE STRING,
ANZHL324 TYPE STRING,
ANZHL325 TYPE STRING,
ANZHL326 TYPE STRING,
ANZHL327 TYPE STRING,
ANZHL328 TYPE STRING,
ANZHL329 TYPE STRING,
ANZHL330 TYPE STRING,
ANZHL331 TYPE STRING,
ANZHL332 TYPE STRING,
ANZHL333 TYPE STRING,
ANZHL334 TYPE STRING,END OF T_EKKO_STR. DATA: WA_HRPAYDE_EHAK_2016_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_HRPAYDE_EHAK_2016_STR-PERNR sy-vline
WA_HRPAYDE_EHAK_2016_STR-FPPER sy-vline
WA_HRPAYDE_EHAK_2016_STR-WERKS sy-vline
WA_HRPAYDE_EHAK_2016_STR-BTRTL sy-vline
WA_HRPAYDE_EHAK_2016_STR-WERKS_ABSENDER sy-vline
WA_HRPAYDE_EHAK_2016_STR-BTRTL_ABSENDER sy-vline
WA_HRPAYDE_EHAK_2016_STR-STAT_BTRNR sy-vline
WA_HRPAYDE_EHAK_2016_STR-WERKS_TEXT sy-vline
WA_HRPAYDE_EHAK_2016_STR-BTRTL_TEXT sy-vline
WA_HRPAYDE_EHAK_2016_STR-BUKRS sy-vline
WA_HRPAYDE_EHAK_2016_STR-PERSG sy-vline
WA_HRPAYDE_EHAK_2016_STR-PERSK sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANSTA sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANSTA_TEXT sy-vline
WA_HRPAYDE_EHAK_2016_STR-TYPE sy-vline
WA_HRPAYDE_EHAK_2016_STR-TYPE_TEXT sy-vline
WA_HRPAYDE_EHAK_2016_STR-TYPE_ANZ sy-vline
WA_HRPAYDE_EHAK_2016_STR-WOKNZ sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG120 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG121 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG122 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG123 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG124 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG125 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG126 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG127 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG128 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG129 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG130 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG132 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG133 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG134 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG135 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG147 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG148 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG149 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG150 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG151 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG152 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG153 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG154 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG155 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG156 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG157 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG158 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG159 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG160 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG161 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG162 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG163 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG164 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG220 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG221 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG222 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG223 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG224 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG277 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG230 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG231 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG240 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG241 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG250 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG251 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG260 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG261 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG270 sy-vline
WA_HRPAYDE_EHAK_2016_STR-BETRG271 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL083 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL084 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL085 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL086 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL087 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL088 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL089 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL090 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL091 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL092 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL093 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL094 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL095 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL096 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL300 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL301 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL302 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL303 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL304 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL305 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL306 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL307 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL311 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL312 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL313 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL317 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL318 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL319 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL320 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL321 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL322 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL323 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL324 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL325 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL326 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL327 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL328 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL329 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL330 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL331 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL332 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL333 sy-vline
WA_HRPAYDE_EHAK_2016_STR-ANZHL334 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.