ABAP Select data from SAP table E1P0526 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 E1P0526 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 E1P0526. 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 E1P0526 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_E1P0526 TYPE STANDARD TABLE OF E1P0526,
      WA_E1P0526 TYPE E1P0526,
      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: <E1P0526> TYPE E1P0526.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM E1P0526
*  INTO TABLE @DATA(IT_E1P05262).
*--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_E1P0526 INDEX 1 INTO DATA(WA_E1P05262).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_E1P0526 ASSIGNING <E1P0526>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<E1P0526>-PERNR = 1.
<E1P0526>-INFTY = 1.
<E1P0526>-SUBTY = 1.
<E1P0526>-OBJPS = 1.
<E1P0526>-SPRPS = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_E1P0526-ENDDA, sy-vline,
WA_E1P0526-BEGDA, sy-vline,
WA_E1P0526-SEQNR, sy-vline,
WA_E1P0526-AEDTM, sy-vline,
WA_E1P0526-UNAME, sy-vline,
WA_E1P0526-HISTO, sy-vline.
ENDLOOP. *Add any further fields from structure WA_E1P0526 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_E1P0526 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_E1P0526 INTO WA_E1P0526. *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_E1P0526_STR,
PERNR TYPE STRING,
INFTY TYPE STRING,
SUBTY TYPE STRING,
OBJPS TYPE STRING,
SPRPS TYPE STRING,
ENDDA TYPE STRING,
BEGDA TYPE STRING,
SEQNR TYPE STRING,
AEDTM TYPE STRING,
UNAME TYPE STRING,
HISTO TYPE STRING,
ITXEX TYPE STRING,
REFEX TYPE STRING,
ORDEX TYPE STRING,
ITBLD TYPE STRING,
PREAS TYPE STRING,
FLAG1 TYPE STRING,
FLAG2 TYPE STRING,
FLAG3 TYPE STRING,
FLAG4 TYPE STRING,
RESE1 TYPE STRING,
RESE2 TYPE STRING,
SART0 TYPE STRING,
VENT0 TYPE STRING,
STATU TYPE STRING,
DGNR0 TYPE STRING,
DGNA0 TYPE STRING,
DTEL0 TYPE STRING,
ASVGR TYPE STRING,
AUSVA TYPE STRING,
AUSVL TYPE STRING,
AUSVG TYPE STRING,
GEBD0 TYPE STRING,
FANA0 TYPE STRING,
VONA0 TYPE STRING,
AKGR0 TYPE STRING,
WKFZ0 TYPE STRING,
PLZL0 TYPE STRING,
WORT0 TYPE STRING,
STRA0 TYPE STRING,
BEAB0 TYPE STRING,
KABE0 TYPE STRING,
TAET0 TYPE STRING,
BTAG0 TYPE STRING,
TATU0 TYPE STRING,
LTAG0 TYPE STRING,
GRUN0 TYPE STRING,
KZKU0 TYPE STRING,
ARFT0 TYPE STRING,
ARTX0 TYPE STRING,
BLOE0 TYPE STRING,
EBSV0 TYPE STRING,
BKTN0 TYPE STRING,
BBLZ0 TYPE STRING,
BENT0 TYPE STRING,
BVO10 TYPE STRING,
BBI10 TYPE STRING,
BBE10 TYPE STRING,
BVO20 TYPE STRING,
BBI20 TYPE STRING,
BBE20 TYPE STRING,
BVO30 TYPE STRING,
BBI30 TYPE STRING,
BBE30 TYPE STRING,
BVO40 TYPE STRING,
BBI40 TYPE STRING,
BBE40 TYPE STRING,
BSUM0 TYPE STRING,
SZKZ0 TYPE STRING,
SBTW0 TYPE STRING,
SBZT0 TYPE STRING,
KEAB0 TYPE STRING,
KEBI0 TYPE STRING,
UAAB0 TYPE STRING,
UABI0 TYPE STRING,
AEFZ0 TYPE STRING,
JAGU0 TYPE STRING,
TAGU0 TYPE STRING,
TPR10 TYPE STRING,
TVO10 TYPE STRING,
TBI10 TYPE STRING,
TPR20 TYPE STRING,
TVO20 TYPE STRING,
TBI20 TYPE STRING,
PROV0 TYPE STRING,
ANV10 TYPE STRING,
ANB10 TYPE STRING,
ANV20 TYPE STRING,
ANB20 TYPE STRING,
ANV30 TYPE STRING,
ANB30 TYPE STRING,
ANV40 TYPE STRING,
ANB40 TYPE STRING,
AGRD0 TYPE STRING,
URLV0 TYPE STRING,
URLB0 TYPE STRING,
AVER0 TYPE STRING,
AVON0 TYPE STRING,
ABIS0 TYPE STRING,
UNV10 TYPE STRING,
UNB10 TYPE STRING,
UNV20 TYPE STRING,
UNB20 TYPE STRING,
UNV30 TYPE STRING,
UNB30 TYPE STRING,
UNV40 TYPE STRING,
UNB40 TYPE STRING,
SZMO0 TYPE STRING,
SZWO0 TYPE STRING,
ANGV0 TYPE STRING,
AHEB0 TYPE STRING,
AMEB0 TYPE STRING,
WAHR0 TYPE STRING,
AGRD2 TYPE STRING,
VOAB0 TYPE STRING,
VOBI0 TYPE STRING,
FEAB0 TYPE STRING,
FEBI0 TYPE STRING,
EIN10 TYPE STRING,
EIN20 TYPE STRING,
EIN30 TYPE STRING,
EIN40 TYPE STRING,
SZMO1 TYPE STRING,
SZWO1 TYPE STRING,
SBZW0 TYPE STRING,
SBZE0 TYPE STRING,
PRAB0 TYPE STRING,END OF T_EKKO_STR. DATA: WA_E1P0526_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_E1P0526_STR-PERNR sy-vline
WA_E1P0526_STR-INFTY sy-vline
WA_E1P0526_STR-SUBTY sy-vline
WA_E1P0526_STR-OBJPS sy-vline
WA_E1P0526_STR-SPRPS sy-vline
WA_E1P0526_STR-ENDDA sy-vline
WA_E1P0526_STR-BEGDA sy-vline
WA_E1P0526_STR-SEQNR sy-vline
WA_E1P0526_STR-AEDTM sy-vline
WA_E1P0526_STR-UNAME sy-vline
WA_E1P0526_STR-HISTO sy-vline
WA_E1P0526_STR-ITXEX sy-vline
WA_E1P0526_STR-REFEX sy-vline
WA_E1P0526_STR-ORDEX sy-vline
WA_E1P0526_STR-ITBLD sy-vline
WA_E1P0526_STR-PREAS sy-vline
WA_E1P0526_STR-FLAG1 sy-vline
WA_E1P0526_STR-FLAG2 sy-vline
WA_E1P0526_STR-FLAG3 sy-vline
WA_E1P0526_STR-FLAG4 sy-vline
WA_E1P0526_STR-RESE1 sy-vline
WA_E1P0526_STR-RESE2 sy-vline
WA_E1P0526_STR-SART0 sy-vline
WA_E1P0526_STR-VENT0 sy-vline
WA_E1P0526_STR-STATU sy-vline
WA_E1P0526_STR-DGNR0 sy-vline
WA_E1P0526_STR-DGNA0 sy-vline
WA_E1P0526_STR-DTEL0 sy-vline
WA_E1P0526_STR-ASVGR sy-vline
WA_E1P0526_STR-AUSVA sy-vline
WA_E1P0526_STR-AUSVL sy-vline
WA_E1P0526_STR-AUSVG sy-vline
WA_E1P0526_STR-GEBD0 sy-vline
WA_E1P0526_STR-FANA0 sy-vline
WA_E1P0526_STR-VONA0 sy-vline
WA_E1P0526_STR-AKGR0 sy-vline
WA_E1P0526_STR-WKFZ0 sy-vline
WA_E1P0526_STR-PLZL0 sy-vline
WA_E1P0526_STR-WORT0 sy-vline
WA_E1P0526_STR-STRA0 sy-vline
WA_E1P0526_STR-BEAB0 sy-vline
WA_E1P0526_STR-KABE0 sy-vline
WA_E1P0526_STR-TAET0 sy-vline
WA_E1P0526_STR-BTAG0 sy-vline
WA_E1P0526_STR-TATU0 sy-vline
WA_E1P0526_STR-LTAG0 sy-vline
WA_E1P0526_STR-GRUN0 sy-vline
WA_E1P0526_STR-KZKU0 sy-vline
WA_E1P0526_STR-ARFT0 sy-vline
WA_E1P0526_STR-ARTX0 sy-vline
WA_E1P0526_STR-BLOE0 sy-vline
WA_E1P0526_STR-EBSV0 sy-vline
WA_E1P0526_STR-BKTN0 sy-vline
WA_E1P0526_STR-BBLZ0 sy-vline
WA_E1P0526_STR-BENT0 sy-vline
WA_E1P0526_STR-BVO10 sy-vline
WA_E1P0526_STR-BBI10 sy-vline
WA_E1P0526_STR-BBE10 sy-vline
WA_E1P0526_STR-BVO20 sy-vline
WA_E1P0526_STR-BBI20 sy-vline
WA_E1P0526_STR-BBE20 sy-vline
WA_E1P0526_STR-BVO30 sy-vline
WA_E1P0526_STR-BBI30 sy-vline
WA_E1P0526_STR-BBE30 sy-vline
WA_E1P0526_STR-BVO40 sy-vline
WA_E1P0526_STR-BBI40 sy-vline
WA_E1P0526_STR-BBE40 sy-vline
WA_E1P0526_STR-BSUM0 sy-vline
WA_E1P0526_STR-SZKZ0 sy-vline
WA_E1P0526_STR-SBTW0 sy-vline
WA_E1P0526_STR-SBZT0 sy-vline
WA_E1P0526_STR-KEAB0 sy-vline
WA_E1P0526_STR-KEBI0 sy-vline
WA_E1P0526_STR-UAAB0 sy-vline
WA_E1P0526_STR-UABI0 sy-vline
WA_E1P0526_STR-AEFZ0 sy-vline
WA_E1P0526_STR-JAGU0 sy-vline
WA_E1P0526_STR-TAGU0 sy-vline
WA_E1P0526_STR-TPR10 sy-vline
WA_E1P0526_STR-TVO10 sy-vline
WA_E1P0526_STR-TBI10 sy-vline
WA_E1P0526_STR-TPR20 sy-vline
WA_E1P0526_STR-TVO20 sy-vline
WA_E1P0526_STR-TBI20 sy-vline
WA_E1P0526_STR-PROV0 sy-vline
WA_E1P0526_STR-ANV10 sy-vline
WA_E1P0526_STR-ANB10 sy-vline
WA_E1P0526_STR-ANV20 sy-vline
WA_E1P0526_STR-ANB20 sy-vline
WA_E1P0526_STR-ANV30 sy-vline
WA_E1P0526_STR-ANB30 sy-vline
WA_E1P0526_STR-ANV40 sy-vline
WA_E1P0526_STR-ANB40 sy-vline
WA_E1P0526_STR-AGRD0 sy-vline
WA_E1P0526_STR-URLV0 sy-vline
WA_E1P0526_STR-URLB0 sy-vline
WA_E1P0526_STR-AVER0 sy-vline
WA_E1P0526_STR-AVON0 sy-vline
WA_E1P0526_STR-ABIS0 sy-vline
WA_E1P0526_STR-UNV10 sy-vline
WA_E1P0526_STR-UNB10 sy-vline
WA_E1P0526_STR-UNV20 sy-vline
WA_E1P0526_STR-UNB20 sy-vline
WA_E1P0526_STR-UNV30 sy-vline
WA_E1P0526_STR-UNB30 sy-vline
WA_E1P0526_STR-UNV40 sy-vline
WA_E1P0526_STR-UNB40 sy-vline
WA_E1P0526_STR-SZMO0 sy-vline
WA_E1P0526_STR-SZWO0 sy-vline
WA_E1P0526_STR-ANGV0 sy-vline
WA_E1P0526_STR-AHEB0 sy-vline
WA_E1P0526_STR-AMEB0 sy-vline
WA_E1P0526_STR-WAHR0 sy-vline
WA_E1P0526_STR-AGRD2 sy-vline
WA_E1P0526_STR-VOAB0 sy-vline
WA_E1P0526_STR-VOBI0 sy-vline
WA_E1P0526_STR-FEAB0 sy-vline
WA_E1P0526_STR-FEBI0 sy-vline
WA_E1P0526_STR-EIN10 sy-vline
WA_E1P0526_STR-EIN20 sy-vline
WA_E1P0526_STR-EIN30 sy-vline
WA_E1P0526_STR-EIN40 sy-vline
WA_E1P0526_STR-SZMO1 sy-vline
WA_E1P0526_STR-SZWO1 sy-vline
WA_E1P0526_STR-SBZW0 sy-vline
WA_E1P0526_STR-SBZE0 sy-vline
WA_E1P0526_STR-PRAB0 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.