ABAP Select data from SAP table HRP1030 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 HRP1030 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 HRP1030. 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 HRP1030 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_HRP1030 TYPE STANDARD TABLE OF HRP1030,
      WA_HRP1030 TYPE HRP1030,
      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: <HRP1030> TYPE HRP1030.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM HRP1030
*  INTO TABLE @DATA(IT_HRP10302).
*--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_HRP1030 INDEX 1 INTO DATA(WA_HRP10302).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_HRP1030 ASSIGNING <HRP1030>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<HRP1030>-MANDT = 1.
<HRP1030>-PLVAR = 1.
<HRP1030>-OTYPE = 1.
<HRP1030>-OBJID = 1.
<HRP1030>-SUBTY = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_HRP1030-ISTAT, sy-vline,
WA_HRP1030-BEGDA, sy-vline,
WA_HRP1030-ENDDA, sy-vline,
WA_HRP1030-VARYF, sy-vline,
WA_HRP1030-SEQNR, sy-vline,
WA_HRP1030-INFTY, sy-vline.
ENDLOOP. *Add any further fields from structure WA_HRP1030 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_HRP1030 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_HRP1030 INTO WA_HRP1030. *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_HRP1030_STR,
MANDT TYPE STRING,
PLVAR TYPE STRING,
OTYPE TYPE STRING,
OBJID TYPE STRING,
SUBTY TYPE STRING,
ISTAT TYPE STRING,
BEGDA TYPE STRING,
ENDDA TYPE STRING,
VARYF TYPE STRING,
SEQNR TYPE STRING,
INFTY TYPE STRING,
OTJID TYPE STRING,
AEDTM TYPE STRING,
UNAME TYPE STRING,
REASN TYPE STRING,
HISTO TYPE STRING,
ITXNR TYPE STRING,
TEILN_TYP TYPE STRING,
BCHECK TYPE STRING,
VCHECK TYPE STRING,
KCHECK TYPE STRING,
QCHECK TYPE STRING,
QASSIGN TYPE STRING,
DELRKURS TYPE STRING,
INSRKTYP TYPE STRING,
XDATA TYPE STRING,
TEILNTYP01 TYPE STRING,
BCHECK01 TYPE STRING,
VCHECK01 TYPE STRING,
KCHECK01 TYPE STRING,
QCHECK01 TYPE STRING,
QASSIGN01 TYPE STRING,
DELRKURS01 TYPE STRING,
INSRKTYP01 TYPE STRING,
XDATA01 TYPE STRING,
TEILNTYP02 TYPE STRING,
BCHECK02 TYPE STRING,
VCHECK02 TYPE STRING,
KCHECK02 TYPE STRING,
QCHECK02 TYPE STRING,
QASSIGN02 TYPE STRING,
DELRKURS02 TYPE STRING,
INSRKTYP02 TYPE STRING,
XDATA02 TYPE STRING,
TEILNTYP03 TYPE STRING,
BCHECK03 TYPE STRING,
VCHECK03 TYPE STRING,
KCHECK03 TYPE STRING,
QCHECK03 TYPE STRING,
QASSIGN03 TYPE STRING,
DELRKURS03 TYPE STRING,
INSRKTYP03 TYPE STRING,
XDATA03 TYPE STRING,
TEILNTYP04 TYPE STRING,
BCHECK04 TYPE STRING,
VCHECK04 TYPE STRING,
KCHECK04 TYPE STRING,
QCHECK04 TYPE STRING,
QASSIGN04 TYPE STRING,
DELRKURS04 TYPE STRING,
INSRKTYP04 TYPE STRING,
XDATA04 TYPE STRING,
TEILNTYP05 TYPE STRING,
BCHECK05 TYPE STRING,
VCHECK05 TYPE STRING,
KCHECK05 TYPE STRING,
QCHECK05 TYPE STRING,
QASSIGN05 TYPE STRING,
DELRKURS05 TYPE STRING,
INSRKTYP05 TYPE STRING,
XDATA05 TYPE STRING,
TEILNTYP06 TYPE STRING,
BCHECK06 TYPE STRING,
VCHECK06 TYPE STRING,
KCHECK06 TYPE STRING,
QCHECK06 TYPE STRING,
QASSIGN06 TYPE STRING,
DELRKURS06 TYPE STRING,
INSRKTYP06 TYPE STRING,
XDATA06 TYPE STRING,
TEILNTYP07 TYPE STRING,
BCHECK07 TYPE STRING,
VCHECK07 TYPE STRING,
KCHECK07 TYPE STRING,
QCHECK07 TYPE STRING,
QASSIGN07 TYPE STRING,
DELRKURS07 TYPE STRING,
INSRKTYP07 TYPE STRING,
XDATA07 TYPE STRING,
TEILNTYP08 TYPE STRING,
BCHECK08 TYPE STRING,
VCHECK08 TYPE STRING,
KCHECK08 TYPE STRING,
QCHECK08 TYPE STRING,
QASSIGN08 TYPE STRING,
DELRKURS08 TYPE STRING,
INSRKTYP08 TYPE STRING,
XDATA08 TYPE STRING,
TEILNTYP09 TYPE STRING,
BCHECK09 TYPE STRING,
VCHECK09 TYPE STRING,
KCHECK09 TYPE STRING,
QCHECK09 TYPE STRING,
QASSIGN09 TYPE STRING,
DELRKURS09 TYPE STRING,
INSRKTYP09 TYPE STRING,
XDATA09 TYPE STRING,
TEILNTYP10 TYPE STRING,
BCHECK10 TYPE STRING,
VCHECK10 TYPE STRING,
KCHECK10 TYPE STRING,
QCHECK10 TYPE STRING,
QASSIGN10 TYPE STRING,
DELRKURS10 TYPE STRING,
INSRKTYP10 TYPE STRING,
XDATA10 TYPE STRING,
TEILNTYP11 TYPE STRING,
BCHECK11 TYPE STRING,
VCHECK11 TYPE STRING,
KCHECK11 TYPE STRING,
QCHECK11 TYPE STRING,
QASSIGN11 TYPE STRING,
DELRKURS11 TYPE STRING,
INSRKTYP11 TYPE STRING,
XDATA11 TYPE STRING,
TEILNTYP12 TYPE STRING,
BCHECK12 TYPE STRING,
VCHECK12 TYPE STRING,
KCHECK12 TYPE STRING,
QCHECK12 TYPE STRING,
QASSIGN12 TYPE STRING,
DELRKURS12 TYPE STRING,
INSRKTYP12 TYPE STRING,
XDATA12 TYPE STRING,
TEILNTYP13 TYPE STRING,
BCHECK13 TYPE STRING,
VCHECK13 TYPE STRING,
KCHECK13 TYPE STRING,
QCHECK13 TYPE STRING,
QASSIGN13 TYPE STRING,
DELRKURS13 TYPE STRING,
INSRKTYP13 TYPE STRING,
XDATA13 TYPE STRING,
TEILNTYP14 TYPE STRING,
BCHECK14 TYPE STRING,
VCHECK14 TYPE STRING,
KCHECK14 TYPE STRING,
QCHECK14 TYPE STRING,
QASSIGN14 TYPE STRING,
DELRKURS14 TYPE STRING,
INSRKTYP14 TYPE STRING,
XDATA14 TYPE STRING,
TEILNTYP15 TYPE STRING,
BCHECK15 TYPE STRING,
VCHECK15 TYPE STRING,
KCHECK15 TYPE STRING,
QCHECK15 TYPE STRING,
QASSIGN15 TYPE STRING,
DELRKURS15 TYPE STRING,
INSRKTYP15 TYPE STRING,
XDATA15 TYPE STRING,END OF T_EKKO_STR. DATA: WA_HRP1030_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_HRP1030_STR-MANDT sy-vline
WA_HRP1030_STR-PLVAR sy-vline
WA_HRP1030_STR-OTYPE sy-vline
WA_HRP1030_STR-OBJID sy-vline
WA_HRP1030_STR-SUBTY sy-vline
WA_HRP1030_STR-ISTAT sy-vline
WA_HRP1030_STR-BEGDA sy-vline
WA_HRP1030_STR-ENDDA sy-vline
WA_HRP1030_STR-VARYF sy-vline
WA_HRP1030_STR-SEQNR sy-vline
WA_HRP1030_STR-INFTY sy-vline
WA_HRP1030_STR-OTJID sy-vline
WA_HRP1030_STR-AEDTM sy-vline
WA_HRP1030_STR-UNAME sy-vline
WA_HRP1030_STR-REASN sy-vline
WA_HRP1030_STR-HISTO sy-vline
WA_HRP1030_STR-ITXNR sy-vline
WA_HRP1030_STR-TEILN_TYP sy-vline
WA_HRP1030_STR-BCHECK sy-vline
WA_HRP1030_STR-VCHECK sy-vline
WA_HRP1030_STR-KCHECK sy-vline
WA_HRP1030_STR-QCHECK sy-vline
WA_HRP1030_STR-QASSIGN sy-vline
WA_HRP1030_STR-DELRKURS sy-vline
WA_HRP1030_STR-INSRKTYP sy-vline
WA_HRP1030_STR-XDATA sy-vline
WA_HRP1030_STR-TEILNTYP01 sy-vline
WA_HRP1030_STR-BCHECK01 sy-vline
WA_HRP1030_STR-VCHECK01 sy-vline
WA_HRP1030_STR-KCHECK01 sy-vline
WA_HRP1030_STR-QCHECK01 sy-vline
WA_HRP1030_STR-QASSIGN01 sy-vline
WA_HRP1030_STR-DELRKURS01 sy-vline
WA_HRP1030_STR-INSRKTYP01 sy-vline
WA_HRP1030_STR-XDATA01 sy-vline
WA_HRP1030_STR-TEILNTYP02 sy-vline
WA_HRP1030_STR-BCHECK02 sy-vline
WA_HRP1030_STR-VCHECK02 sy-vline
WA_HRP1030_STR-KCHECK02 sy-vline
WA_HRP1030_STR-QCHECK02 sy-vline
WA_HRP1030_STR-QASSIGN02 sy-vline
WA_HRP1030_STR-DELRKURS02 sy-vline
WA_HRP1030_STR-INSRKTYP02 sy-vline
WA_HRP1030_STR-XDATA02 sy-vline
WA_HRP1030_STR-TEILNTYP03 sy-vline
WA_HRP1030_STR-BCHECK03 sy-vline
WA_HRP1030_STR-VCHECK03 sy-vline
WA_HRP1030_STR-KCHECK03 sy-vline
WA_HRP1030_STR-QCHECK03 sy-vline
WA_HRP1030_STR-QASSIGN03 sy-vline
WA_HRP1030_STR-DELRKURS03 sy-vline
WA_HRP1030_STR-INSRKTYP03 sy-vline
WA_HRP1030_STR-XDATA03 sy-vline
WA_HRP1030_STR-TEILNTYP04 sy-vline
WA_HRP1030_STR-BCHECK04 sy-vline
WA_HRP1030_STR-VCHECK04 sy-vline
WA_HRP1030_STR-KCHECK04 sy-vline
WA_HRP1030_STR-QCHECK04 sy-vline
WA_HRP1030_STR-QASSIGN04 sy-vline
WA_HRP1030_STR-DELRKURS04 sy-vline
WA_HRP1030_STR-INSRKTYP04 sy-vline
WA_HRP1030_STR-XDATA04 sy-vline
WA_HRP1030_STR-TEILNTYP05 sy-vline
WA_HRP1030_STR-BCHECK05 sy-vline
WA_HRP1030_STR-VCHECK05 sy-vline
WA_HRP1030_STR-KCHECK05 sy-vline
WA_HRP1030_STR-QCHECK05 sy-vline
WA_HRP1030_STR-QASSIGN05 sy-vline
WA_HRP1030_STR-DELRKURS05 sy-vline
WA_HRP1030_STR-INSRKTYP05 sy-vline
WA_HRP1030_STR-XDATA05 sy-vline
WA_HRP1030_STR-TEILNTYP06 sy-vline
WA_HRP1030_STR-BCHECK06 sy-vline
WA_HRP1030_STR-VCHECK06 sy-vline
WA_HRP1030_STR-KCHECK06 sy-vline
WA_HRP1030_STR-QCHECK06 sy-vline
WA_HRP1030_STR-QASSIGN06 sy-vline
WA_HRP1030_STR-DELRKURS06 sy-vline
WA_HRP1030_STR-INSRKTYP06 sy-vline
WA_HRP1030_STR-XDATA06 sy-vline
WA_HRP1030_STR-TEILNTYP07 sy-vline
WA_HRP1030_STR-BCHECK07 sy-vline
WA_HRP1030_STR-VCHECK07 sy-vline
WA_HRP1030_STR-KCHECK07 sy-vline
WA_HRP1030_STR-QCHECK07 sy-vline
WA_HRP1030_STR-QASSIGN07 sy-vline
WA_HRP1030_STR-DELRKURS07 sy-vline
WA_HRP1030_STR-INSRKTYP07 sy-vline
WA_HRP1030_STR-XDATA07 sy-vline
WA_HRP1030_STR-TEILNTYP08 sy-vline
WA_HRP1030_STR-BCHECK08 sy-vline
WA_HRP1030_STR-VCHECK08 sy-vline
WA_HRP1030_STR-KCHECK08 sy-vline
WA_HRP1030_STR-QCHECK08 sy-vline
WA_HRP1030_STR-QASSIGN08 sy-vline
WA_HRP1030_STR-DELRKURS08 sy-vline
WA_HRP1030_STR-INSRKTYP08 sy-vline
WA_HRP1030_STR-XDATA08 sy-vline
WA_HRP1030_STR-TEILNTYP09 sy-vline
WA_HRP1030_STR-BCHECK09 sy-vline
WA_HRP1030_STR-VCHECK09 sy-vline
WA_HRP1030_STR-KCHECK09 sy-vline
WA_HRP1030_STR-QCHECK09 sy-vline
WA_HRP1030_STR-QASSIGN09 sy-vline
WA_HRP1030_STR-DELRKURS09 sy-vline
WA_HRP1030_STR-INSRKTYP09 sy-vline
WA_HRP1030_STR-XDATA09 sy-vline
WA_HRP1030_STR-TEILNTYP10 sy-vline
WA_HRP1030_STR-BCHECK10 sy-vline
WA_HRP1030_STR-VCHECK10 sy-vline
WA_HRP1030_STR-KCHECK10 sy-vline
WA_HRP1030_STR-QCHECK10 sy-vline
WA_HRP1030_STR-QASSIGN10 sy-vline
WA_HRP1030_STR-DELRKURS10 sy-vline
WA_HRP1030_STR-INSRKTYP10 sy-vline
WA_HRP1030_STR-XDATA10 sy-vline
WA_HRP1030_STR-TEILNTYP11 sy-vline
WA_HRP1030_STR-BCHECK11 sy-vline
WA_HRP1030_STR-VCHECK11 sy-vline
WA_HRP1030_STR-KCHECK11 sy-vline
WA_HRP1030_STR-QCHECK11 sy-vline
WA_HRP1030_STR-QASSIGN11 sy-vline
WA_HRP1030_STR-DELRKURS11 sy-vline
WA_HRP1030_STR-INSRKTYP11 sy-vline
WA_HRP1030_STR-XDATA11 sy-vline
WA_HRP1030_STR-TEILNTYP12 sy-vline
WA_HRP1030_STR-BCHECK12 sy-vline
WA_HRP1030_STR-VCHECK12 sy-vline
WA_HRP1030_STR-KCHECK12 sy-vline
WA_HRP1030_STR-QCHECK12 sy-vline
WA_HRP1030_STR-QASSIGN12 sy-vline
WA_HRP1030_STR-DELRKURS12 sy-vline
WA_HRP1030_STR-INSRKTYP12 sy-vline
WA_HRP1030_STR-XDATA12 sy-vline
WA_HRP1030_STR-TEILNTYP13 sy-vline
WA_HRP1030_STR-BCHECK13 sy-vline
WA_HRP1030_STR-VCHECK13 sy-vline
WA_HRP1030_STR-KCHECK13 sy-vline
WA_HRP1030_STR-QCHECK13 sy-vline
WA_HRP1030_STR-QASSIGN13 sy-vline
WA_HRP1030_STR-DELRKURS13 sy-vline
WA_HRP1030_STR-INSRKTYP13 sy-vline
WA_HRP1030_STR-XDATA13 sy-vline
WA_HRP1030_STR-TEILNTYP14 sy-vline
WA_HRP1030_STR-BCHECK14 sy-vline
WA_HRP1030_STR-VCHECK14 sy-vline
WA_HRP1030_STR-KCHECK14 sy-vline
WA_HRP1030_STR-QCHECK14 sy-vline
WA_HRP1030_STR-QASSIGN14 sy-vline
WA_HRP1030_STR-DELRKURS14 sy-vline
WA_HRP1030_STR-INSRKTYP14 sy-vline
WA_HRP1030_STR-XDATA14 sy-vline
WA_HRP1030_STR-TEILNTYP15 sy-vline
WA_HRP1030_STR-BCHECK15 sy-vline
WA_HRP1030_STR-VCHECK15 sy-vline
WA_HRP1030_STR-KCHECK15 sy-vline
WA_HRP1030_STR-QCHECK15 sy-vline
WA_HRP1030_STR-QASSIGN15 sy-vline
WA_HRP1030_STR-DELRKURS15 sy-vline
WA_HRP1030_STR-INSRKTYP15 sy-vline
WA_HRP1030_STR-XDATA15 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.