ABAP Select data from SAP table E1P0028 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 E1P0028 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 E1P0028. 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 E1P0028 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_E1P0028 TYPE STANDARD TABLE OF E1P0028,
      WA_E1P0028 TYPE E1P0028,
      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: <E1P0028> TYPE E1P0028.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM E1P0028
*  INTO TABLE @DATA(IT_E1P00282).
*--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_E1P0028 INDEX 1 INTO DATA(WA_E1P00282).


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

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_E1P0028-ENDDA, sy-vline,
WA_E1P0028-BEGDA, sy-vline,
WA_E1P0028-SEQNR, sy-vline,
WA_E1P0028-AEDTM, sy-vline,
WA_E1P0028-UNAME, sy-vline,
WA_E1P0028-HISTO, sy-vline.
ENDLOOP. *Add any further fields from structure WA_E1P0028 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_E1P0028 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_E1P0028 INTO WA_E1P0028. *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_E1P0028_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,
EXDAT TYPE STRING,
LXDAT TYPE STRING,
RESUL TYPE STRING,
DIANR TYPE STRING,
SBJ01 TYPE STRING,
JNF01 TYPE STRING,
NMF01 TYPE STRING,
DTF01 TYPE STRING,
WTF01 TYPE STRING,
SBJ02 TYPE STRING,
JNF02 TYPE STRING,
NMF02 TYPE STRING,
DTF02 TYPE STRING,
WTF02 TYPE STRING,
SBJ03 TYPE STRING,
JNF03 TYPE STRING,
NMF03 TYPE STRING,
DTF03 TYPE STRING,
WTF03 TYPE STRING,
SBJ04 TYPE STRING,
JNF04 TYPE STRING,
NMF04 TYPE STRING,
DTF04 TYPE STRING,
WTF04 TYPE STRING,
SBJ05 TYPE STRING,
JNF05 TYPE STRING,
NMF05 TYPE STRING,
DTF05 TYPE STRING,
WTF05 TYPE STRING,
SBJ06 TYPE STRING,
JNF06 TYPE STRING,
NMF06 TYPE STRING,
DTF06 TYPE STRING,
WTF06 TYPE STRING,
SBJ07 TYPE STRING,
JNF07 TYPE STRING,
NMF07 TYPE STRING,
DTF07 TYPE STRING,
WTF07 TYPE STRING,
SBJ08 TYPE STRING,
JNF08 TYPE STRING,
NMF08 TYPE STRING,
DTF08 TYPE STRING,
WTF08 TYPE STRING,
SBJ09 TYPE STRING,
JNF09 TYPE STRING,
NMF09 TYPE STRING,
DTF09 TYPE STRING,
WTF09 TYPE STRING,
SBJ10 TYPE STRING,
JNF10 TYPE STRING,
NMF10 TYPE STRING,
DTF10 TYPE STRING,
WTF10 TYPE STRING,
SBJ11 TYPE STRING,
JNF11 TYPE STRING,
NMF11 TYPE STRING,
DTF11 TYPE STRING,
WTF11 TYPE STRING,
SBJ12 TYPE STRING,
JNF12 TYPE STRING,
NMF12 TYPE STRING,
DTF12 TYPE STRING,
WTF12 TYPE STRING,
SBJ13 TYPE STRING,
JNF13 TYPE STRING,
NMF13 TYPE STRING,
DTF13 TYPE STRING,
WTF13 TYPE STRING,
SBJ14 TYPE STRING,
JNF14 TYPE STRING,
NMF14 TYPE STRING,
DTF14 TYPE STRING,
WTF14 TYPE STRING,
SBJ15 TYPE STRING,
JNF15 TYPE STRING,
NMF15 TYPE STRING,
DTF15 TYPE STRING,
WTF15 TYPE STRING,
SBJ16 TYPE STRING,
JNF16 TYPE STRING,
NMF16 TYPE STRING,
DTF16 TYPE STRING,
WTF16 TYPE STRING,
SBJ17 TYPE STRING,
JNF17 TYPE STRING,
NMF17 TYPE STRING,
DTF17 TYPE STRING,
WTF17 TYPE STRING,
SBJ18 TYPE STRING,
JNF18 TYPE STRING,
NMF18 TYPE STRING,
DTF18 TYPE STRING,
WTF18 TYPE STRING,
SBJ19 TYPE STRING,
JNF19 TYPE STRING,
NMF19 TYPE STRING,
DTF19 TYPE STRING,
WTF19 TYPE STRING,
SBJ20 TYPE STRING,
JNF20 TYPE STRING,
NMF20 TYPE STRING,
DTF20 TYPE STRING,
WTF20 TYPE STRING,
SBJ21 TYPE STRING,
JNF21 TYPE STRING,
NMF21 TYPE STRING,
DTF21 TYPE STRING,
WTF21 TYPE STRING,
SBJ22 TYPE STRING,
JNF22 TYPE STRING,
NMF22 TYPE STRING,
DTF22 TYPE STRING,
WTF22 TYPE STRING,
SBJ23 TYPE STRING,
JNF23 TYPE STRING,
NMF23 TYPE STRING,
DTF23 TYPE STRING,
WTF23 TYPE STRING,
SBJ24 TYPE STRING,
JNF24 TYPE STRING,
NMF24 TYPE STRING,
DTF24 TYPE STRING,
WTF24 TYPE STRING,
SBJ25 TYPE STRING,
JNF25 TYPE STRING,
NMF25 TYPE STRING,
DTF25 TYPE STRING,
WTF25 TYPE STRING,
SBJ26 TYPE STRING,
JNF26 TYPE STRING,
NMF26 TYPE STRING,
DTF26 TYPE STRING,
WTF26 TYPE STRING,
SBJ27 TYPE STRING,
JNF27 TYPE STRING,
NMF27 TYPE STRING,
DTF27 TYPE STRING,
WTF27 TYPE STRING,
SBJ28 TYPE STRING,
JNF28 TYPE STRING,
NMF28 TYPE STRING,
DTF28 TYPE STRING,
WTF28 TYPE STRING,END OF T_EKKO_STR. DATA: WA_E1P0028_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_E1P0028_STR-PERNR sy-vline
WA_E1P0028_STR-INFTY sy-vline
WA_E1P0028_STR-SUBTY sy-vline
WA_E1P0028_STR-OBJPS sy-vline
WA_E1P0028_STR-SPRPS sy-vline
WA_E1P0028_STR-ENDDA sy-vline
WA_E1P0028_STR-BEGDA sy-vline
WA_E1P0028_STR-SEQNR sy-vline
WA_E1P0028_STR-AEDTM sy-vline
WA_E1P0028_STR-UNAME sy-vline
WA_E1P0028_STR-HISTO sy-vline
WA_E1P0028_STR-ITXEX sy-vline
WA_E1P0028_STR-REFEX sy-vline
WA_E1P0028_STR-ORDEX sy-vline
WA_E1P0028_STR-ITBLD sy-vline
WA_E1P0028_STR-PREAS sy-vline
WA_E1P0028_STR-FLAG1 sy-vline
WA_E1P0028_STR-FLAG2 sy-vline
WA_E1P0028_STR-FLAG3 sy-vline
WA_E1P0028_STR-FLAG4 sy-vline
WA_E1P0028_STR-RESE1 sy-vline
WA_E1P0028_STR-RESE2 sy-vline
WA_E1P0028_STR-EXDAT sy-vline
WA_E1P0028_STR-LXDAT sy-vline
WA_E1P0028_STR-RESUL sy-vline
WA_E1P0028_STR-DIANR sy-vline
WA_E1P0028_STR-SBJ01 sy-vline
WA_E1P0028_STR-JNF01 sy-vline
WA_E1P0028_STR-NMF01 sy-vline
WA_E1P0028_STR-DTF01 sy-vline
WA_E1P0028_STR-WTF01 sy-vline
WA_E1P0028_STR-SBJ02 sy-vline
WA_E1P0028_STR-JNF02 sy-vline
WA_E1P0028_STR-NMF02 sy-vline
WA_E1P0028_STR-DTF02 sy-vline
WA_E1P0028_STR-WTF02 sy-vline
WA_E1P0028_STR-SBJ03 sy-vline
WA_E1P0028_STR-JNF03 sy-vline
WA_E1P0028_STR-NMF03 sy-vline
WA_E1P0028_STR-DTF03 sy-vline
WA_E1P0028_STR-WTF03 sy-vline
WA_E1P0028_STR-SBJ04 sy-vline
WA_E1P0028_STR-JNF04 sy-vline
WA_E1P0028_STR-NMF04 sy-vline
WA_E1P0028_STR-DTF04 sy-vline
WA_E1P0028_STR-WTF04 sy-vline
WA_E1P0028_STR-SBJ05 sy-vline
WA_E1P0028_STR-JNF05 sy-vline
WA_E1P0028_STR-NMF05 sy-vline
WA_E1P0028_STR-DTF05 sy-vline
WA_E1P0028_STR-WTF05 sy-vline
WA_E1P0028_STR-SBJ06 sy-vline
WA_E1P0028_STR-JNF06 sy-vline
WA_E1P0028_STR-NMF06 sy-vline
WA_E1P0028_STR-DTF06 sy-vline
WA_E1P0028_STR-WTF06 sy-vline
WA_E1P0028_STR-SBJ07 sy-vline
WA_E1P0028_STR-JNF07 sy-vline
WA_E1P0028_STR-NMF07 sy-vline
WA_E1P0028_STR-DTF07 sy-vline
WA_E1P0028_STR-WTF07 sy-vline
WA_E1P0028_STR-SBJ08 sy-vline
WA_E1P0028_STR-JNF08 sy-vline
WA_E1P0028_STR-NMF08 sy-vline
WA_E1P0028_STR-DTF08 sy-vline
WA_E1P0028_STR-WTF08 sy-vline
WA_E1P0028_STR-SBJ09 sy-vline
WA_E1P0028_STR-JNF09 sy-vline
WA_E1P0028_STR-NMF09 sy-vline
WA_E1P0028_STR-DTF09 sy-vline
WA_E1P0028_STR-WTF09 sy-vline
WA_E1P0028_STR-SBJ10 sy-vline
WA_E1P0028_STR-JNF10 sy-vline
WA_E1P0028_STR-NMF10 sy-vline
WA_E1P0028_STR-DTF10 sy-vline
WA_E1P0028_STR-WTF10 sy-vline
WA_E1P0028_STR-SBJ11 sy-vline
WA_E1P0028_STR-JNF11 sy-vline
WA_E1P0028_STR-NMF11 sy-vline
WA_E1P0028_STR-DTF11 sy-vline
WA_E1P0028_STR-WTF11 sy-vline
WA_E1P0028_STR-SBJ12 sy-vline
WA_E1P0028_STR-JNF12 sy-vline
WA_E1P0028_STR-NMF12 sy-vline
WA_E1P0028_STR-DTF12 sy-vline
WA_E1P0028_STR-WTF12 sy-vline
WA_E1P0028_STR-SBJ13 sy-vline
WA_E1P0028_STR-JNF13 sy-vline
WA_E1P0028_STR-NMF13 sy-vline
WA_E1P0028_STR-DTF13 sy-vline
WA_E1P0028_STR-WTF13 sy-vline
WA_E1P0028_STR-SBJ14 sy-vline
WA_E1P0028_STR-JNF14 sy-vline
WA_E1P0028_STR-NMF14 sy-vline
WA_E1P0028_STR-DTF14 sy-vline
WA_E1P0028_STR-WTF14 sy-vline
WA_E1P0028_STR-SBJ15 sy-vline
WA_E1P0028_STR-JNF15 sy-vline
WA_E1P0028_STR-NMF15 sy-vline
WA_E1P0028_STR-DTF15 sy-vline
WA_E1P0028_STR-WTF15 sy-vline
WA_E1P0028_STR-SBJ16 sy-vline
WA_E1P0028_STR-JNF16 sy-vline
WA_E1P0028_STR-NMF16 sy-vline
WA_E1P0028_STR-DTF16 sy-vline
WA_E1P0028_STR-WTF16 sy-vline
WA_E1P0028_STR-SBJ17 sy-vline
WA_E1P0028_STR-JNF17 sy-vline
WA_E1P0028_STR-NMF17 sy-vline
WA_E1P0028_STR-DTF17 sy-vline
WA_E1P0028_STR-WTF17 sy-vline
WA_E1P0028_STR-SBJ18 sy-vline
WA_E1P0028_STR-JNF18 sy-vline
WA_E1P0028_STR-NMF18 sy-vline
WA_E1P0028_STR-DTF18 sy-vline
WA_E1P0028_STR-WTF18 sy-vline
WA_E1P0028_STR-SBJ19 sy-vline
WA_E1P0028_STR-JNF19 sy-vline
WA_E1P0028_STR-NMF19 sy-vline
WA_E1P0028_STR-DTF19 sy-vline
WA_E1P0028_STR-WTF19 sy-vline
WA_E1P0028_STR-SBJ20 sy-vline
WA_E1P0028_STR-JNF20 sy-vline
WA_E1P0028_STR-NMF20 sy-vline
WA_E1P0028_STR-DTF20 sy-vline
WA_E1P0028_STR-WTF20 sy-vline
WA_E1P0028_STR-SBJ21 sy-vline
WA_E1P0028_STR-JNF21 sy-vline
WA_E1P0028_STR-NMF21 sy-vline
WA_E1P0028_STR-DTF21 sy-vline
WA_E1P0028_STR-WTF21 sy-vline
WA_E1P0028_STR-SBJ22 sy-vline
WA_E1P0028_STR-JNF22 sy-vline
WA_E1P0028_STR-NMF22 sy-vline
WA_E1P0028_STR-DTF22 sy-vline
WA_E1P0028_STR-WTF22 sy-vline
WA_E1P0028_STR-SBJ23 sy-vline
WA_E1P0028_STR-JNF23 sy-vline
WA_E1P0028_STR-NMF23 sy-vline
WA_E1P0028_STR-DTF23 sy-vline
WA_E1P0028_STR-WTF23 sy-vline
WA_E1P0028_STR-SBJ24 sy-vline
WA_E1P0028_STR-JNF24 sy-vline
WA_E1P0028_STR-NMF24 sy-vline
WA_E1P0028_STR-DTF24 sy-vline
WA_E1P0028_STR-WTF24 sy-vline
WA_E1P0028_STR-SBJ25 sy-vline
WA_E1P0028_STR-JNF25 sy-vline
WA_E1P0028_STR-NMF25 sy-vline
WA_E1P0028_STR-DTF25 sy-vline
WA_E1P0028_STR-WTF25 sy-vline
WA_E1P0028_STR-SBJ26 sy-vline
WA_E1P0028_STR-JNF26 sy-vline
WA_E1P0028_STR-NMF26 sy-vline
WA_E1P0028_STR-DTF26 sy-vline
WA_E1P0028_STR-WTF26 sy-vline
WA_E1P0028_STR-SBJ27 sy-vline
WA_E1P0028_STR-JNF27 sy-vline
WA_E1P0028_STR-NMF27 sy-vline
WA_E1P0028_STR-DTF27 sy-vline
WA_E1P0028_STR-WTF27 sy-vline
WA_E1P0028_STR-SBJ28 sy-vline
WA_E1P0028_STR-JNF28 sy-vline
WA_E1P0028_STR-NMF28 sy-vline
WA_E1P0028_STR-DTF28 sy-vline
WA_E1P0028_STR-WTF28 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.