ABAP Select data from SAP table FELD 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 FELD 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 FELD. 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 FELD 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_FELD TYPE STANDARD TABLE OF FELD,
      WA_FELD TYPE FELD,
      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: <FELD> TYPE FELD.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM FELD
*  INTO TABLE @DATA(IT_FELD2).
*--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_FELD INDEX 1 INTO DATA(WA_FELD2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_FELD ASSIGNING <FELD>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<FELD>-NAME = 1.
<FELD>-DYNNR = 1.
<FELD>-LINE = 1.
<FELD>-COLN = 1.
<FELD>-LENG = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_FELD-VLENG, sy-vline,
WA_FELD-HIGH, sy-vline,
WA_FELD-TYPE, sy-vline,
WA_FELD-FEIN, sy-vline,
WA_FELD-FOUT, sy-vline,
WA_FELD-SCROLL, sy-vline.
ENDLOOP. *Add any further fields from structure WA_FELD 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_FELD 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_FELD INTO WA_FELD. *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_FELD_STR,
NAME TYPE STRING,
DYNNR TYPE STRING,
LINE TYPE STRING,
COLN TYPE STRING,
LENG TYPE STRING,
VLENG TYPE STRING,
HIGH TYPE STRING,
TYPE TYPE STRING,
FEIN TYPE STRING,
FOUT TYPE STRING,
SCROLL TYPE STRING,
DICT TYPE STRING,
DMOD TYPE STRING,
GRP1 TYPE STRING,
GRP2 TYPE STRING,
GRP3 TYPE STRING,
GRP4 TYPE STRING,
LOOP TYPE STRING,
FOBL TYPE STRING,
FSTR TYPE STRING,
FNRS TYPE STRING,
FGKS TYPE STRING,
FFIX TYPE STRING,
FOSB TYPE STRING,
FFKY TYPE STRING,
FSPA TYPE STRING,
FGPA TYPE STRING,
PAID TYPE STRING,
UCNV TYPE STRING,
HELL TYPE STRING,
UNSI TYPE STRING,
INVR TYPE STRING,
BLIN TYPE STRING,
ULIN TYPE STRING,
COLR TYPE STRING,
FJUS TYPE STRING,
FILL TYPE STRING,
LABELLEFT TYPE STRING,
LABELRIGHT TYPE STRING,
DBLCLICK TYPE STRING,
LTR TYPE STRING,
BIDICTRL TYPE STRING,
MTCH TYPE STRING,
WAER TYPE STRING,
FCOD TYPE STRING,
PTYPE TYPE STRING,
CTMENUPROG TYPE STRING,
CTMENUSTAT TYPE STRING,
CTMENUONCT TYPE STRING,
CTMENUST TYPE STRING,
CTMENUDY TYPE STRING,
CCNAME TYPE STRING,
CCDLEFT TYPE STRING,
CCDRIGHT TYPE STRING,
CCDTOP TYPE STRING,
CCDBOTTOM TYPE STRING,
CCDLEN_L TYPE STRING,
CCDLEN_R TYPE STRING,
CCDHIG_T TYPE STRING,
CCDHIG_B TYPE STRING,
LTYP TYPE STRING,
GTYP TYPE STRING,
FIXF TYPE STRING,
NO3D TYPE STRING,
OOUT TYPE STRING,
WIN1 TYPE STRING,
WIN2 TYPE STRING,
WIN3 TYPE STRING,
STXT TYPE STRING,
CMBTAST TYPE STRING,
CMBFOC TYPE STRING,
DROPFROM TYPE STRING,
DROPDOWN TYPE STRING,
FETCHFLD TYPE STRING,
RFCDEST TYPE STRING,
SCHAB TYPE STRING,
SCHLK TYPE STRING,
SCHLM TYPE STRING,
SCHLL TYPE STRING,
UEBER TYPE STRING,
SCHLNO TYPE STRING,
SCHABNO TYPE STRING,
TEXTMOD TYPE STRING,
TEXTORIG TYPE STRING,
DEZUSATZ TYPE STRING,
TLTRENNHOR TYPE STRING,
TLTRENNVER TYPE STRING,
TLSCROLLH TYPE STRING,
TLSCROLLV TYPE STRING,
TLSCROLL TYPE STRING,
TLSELECTZN TYPE STRING,
TLSELECTZS TYPE STRING,
TLSELECTZM TYPE STRING,
TLSELECTSN TYPE STRING,
TLSELECTSS TYPE STRING,
TLSELECTSM TYPE STRING,
TLSHOWONLY TYPE STRING,
TLVARV TYPE STRING,
TLVARVMIN TYPE STRING,
TLVARH TYPE STRING,
TLVARHMIN TYPE STRING,
TLMARK TYPE STRING,
TLTITEL TYPE STRING,
TLUEBER TYPE STRING,
TLERFA TYPE STRING,
TLAUSW TYPE STRING,
TLCONF TYPE STRING,
TLTEXT TYPE STRING,
TLENTRY TYPE STRING,
TLRADIOB TYPE STRING,
TLCHECKB TYPE STRING,
TLPUSHB TYPE STRING,
TLNAMETYP TYPE STRING,
TLNAMEFLD TYPE STRING,
TLNAMEUEB TYPE STRING,
TLNAMESEL TYPE STRING,
TLNAMETIT TYPE STRING,
TLFELDFIX TYPE STRING,
TLFIXANZ TYPE STRING,
TLFELDNR TYPE STRING,
TLFELDNR00 TYPE STRING,
TLFELDSPBR TYPE STRING,
SPCELL1 TYPE STRING,
SPCELL2 TYPE STRING,
SPSPLITTHORIZ TYPE STRING,
SPSPLITTVERT TYPE STRING,
SPSASH TYPE STRING,
OUTPUTSTYLE TYPE STRING,
SIGN TYPE STRING,
NOINPUTHISTORY TYPE STRING,
AMPMENABLED TYPE STRING,
EXTEND TYPE STRING,
HIERARCHY TYPE STRING,
ICON TYPE STRING,
ICON_N TYPE STRING,
ICON_T TYPE STRING,
ICON_L TYPE STRING,
ICON_Q TYPE STRING,
ICON_B TYPE STRING,
ICON_X TYPE STRING,
FLDP TYPE STRING,
FLDN TYPE STRING,
PROG TYPE STRING,
DNUM TYPE STRING,
PBO_F TYPE STRING,
PBO_L TYPE STRING,
PAI_F TYPE STRING,
PAI_L TYPE STRING,
EXTEXT TYPE STRING,
EXENTRY TYPE STRING,
EXRADIO TYPE STRING,
EXCHECK TYPE STRING,
EXPUSH TYPE STRING,
EXFRAME TYPE STRING,
EXTABCTRL TYPE STRING,
EXCUSTOM TYPE STRING,
EXTSTRCTRL TYPE STRING,
EXSUBSCR TYPE STRING,
EXSPLITTER TYPE STRING,
EXSHOW TYPE STRING,
MSG_LINE1 TYPE STRING,
MSG_LINE2 TYPE STRING,
PROPSHOW TYPE STRING,
PROPNAME TYPE STRING,
PROPBOOL TYPE STRING,
PROPSTRING TYPE STRING,
TSVHEIGHT TYPE STRING,END OF T_EKKO_STR. DATA: WA_FELD_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_FELD_STR-NAME sy-vline
WA_FELD_STR-DYNNR sy-vline
WA_FELD_STR-LINE sy-vline
WA_FELD_STR-COLN sy-vline
WA_FELD_STR-LENG sy-vline
WA_FELD_STR-VLENG sy-vline
WA_FELD_STR-HIGH sy-vline
WA_FELD_STR-TYPE sy-vline
WA_FELD_STR-FEIN sy-vline
WA_FELD_STR-FOUT sy-vline
WA_FELD_STR-SCROLL sy-vline
WA_FELD_STR-DICT sy-vline
WA_FELD_STR-DMOD sy-vline
WA_FELD_STR-GRP1 sy-vline
WA_FELD_STR-GRP2 sy-vline
WA_FELD_STR-GRP3 sy-vline
WA_FELD_STR-GRP4 sy-vline
WA_FELD_STR-LOOP sy-vline
WA_FELD_STR-FOBL sy-vline
WA_FELD_STR-FSTR sy-vline
WA_FELD_STR-FNRS sy-vline
WA_FELD_STR-FGKS sy-vline
WA_FELD_STR-FFIX sy-vline
WA_FELD_STR-FOSB sy-vline
WA_FELD_STR-FFKY sy-vline
WA_FELD_STR-FSPA sy-vline
WA_FELD_STR-FGPA sy-vline
WA_FELD_STR-PAID sy-vline
WA_FELD_STR-UCNV sy-vline
WA_FELD_STR-HELL sy-vline
WA_FELD_STR-UNSI sy-vline
WA_FELD_STR-INVR sy-vline
WA_FELD_STR-BLIN sy-vline
WA_FELD_STR-ULIN sy-vline
WA_FELD_STR-COLR sy-vline
WA_FELD_STR-FJUS sy-vline
WA_FELD_STR-FILL sy-vline
WA_FELD_STR-LABELLEFT sy-vline
WA_FELD_STR-LABELRIGHT sy-vline
WA_FELD_STR-DBLCLICK sy-vline
WA_FELD_STR-LTR sy-vline
WA_FELD_STR-BIDICTRL sy-vline
WA_FELD_STR-MTCH sy-vline
WA_FELD_STR-WAER sy-vline
WA_FELD_STR-FCOD sy-vline
WA_FELD_STR-PTYPE sy-vline
WA_FELD_STR-CTMENUPROG sy-vline
WA_FELD_STR-CTMENUSTAT sy-vline
WA_FELD_STR-CTMENUONCT sy-vline
WA_FELD_STR-CTMENUST sy-vline
WA_FELD_STR-CTMENUDY sy-vline
WA_FELD_STR-CCNAME sy-vline
WA_FELD_STR-CCDLEFT sy-vline
WA_FELD_STR-CCDRIGHT sy-vline
WA_FELD_STR-CCDTOP sy-vline
WA_FELD_STR-CCDBOTTOM sy-vline
WA_FELD_STR-CCDLEN_L sy-vline
WA_FELD_STR-CCDLEN_R sy-vline
WA_FELD_STR-CCDHIG_T sy-vline
WA_FELD_STR-CCDHIG_B sy-vline
WA_FELD_STR-LTYP sy-vline
WA_FELD_STR-GTYP sy-vline
WA_FELD_STR-FIXF sy-vline
WA_FELD_STR-NO3D sy-vline
WA_FELD_STR-OOUT sy-vline
WA_FELD_STR-WIN1 sy-vline
WA_FELD_STR-WIN2 sy-vline
WA_FELD_STR-WIN3 sy-vline
WA_FELD_STR-STXT sy-vline
WA_FELD_STR-CMBTAST sy-vline
WA_FELD_STR-CMBFOC sy-vline
WA_FELD_STR-DROPFROM sy-vline
WA_FELD_STR-DROPDOWN sy-vline
WA_FELD_STR-FETCHFLD sy-vline
WA_FELD_STR-RFCDEST sy-vline
WA_FELD_STR-SCHAB sy-vline
WA_FELD_STR-SCHLK sy-vline
WA_FELD_STR-SCHLM sy-vline
WA_FELD_STR-SCHLL sy-vline
WA_FELD_STR-UEBER sy-vline
WA_FELD_STR-SCHLNO sy-vline
WA_FELD_STR-SCHABNO sy-vline
WA_FELD_STR-TEXTMOD sy-vline
WA_FELD_STR-TEXTORIG sy-vline
WA_FELD_STR-DEZUSATZ sy-vline
WA_FELD_STR-TLTRENNHOR sy-vline
WA_FELD_STR-TLTRENNVER sy-vline
WA_FELD_STR-TLSCROLLH sy-vline
WA_FELD_STR-TLSCROLLV sy-vline
WA_FELD_STR-TLSCROLL sy-vline
WA_FELD_STR-TLSELECTZN sy-vline
WA_FELD_STR-TLSELECTZS sy-vline
WA_FELD_STR-TLSELECTZM sy-vline
WA_FELD_STR-TLSELECTSN sy-vline
WA_FELD_STR-TLSELECTSS sy-vline
WA_FELD_STR-TLSELECTSM sy-vline
WA_FELD_STR-TLSHOWONLY sy-vline
WA_FELD_STR-TLVARV sy-vline
WA_FELD_STR-TLVARVMIN sy-vline
WA_FELD_STR-TLVARH sy-vline
WA_FELD_STR-TLVARHMIN sy-vline
WA_FELD_STR-TLMARK sy-vline
WA_FELD_STR-TLTITEL sy-vline
WA_FELD_STR-TLUEBER sy-vline
WA_FELD_STR-TLERFA sy-vline
WA_FELD_STR-TLAUSW sy-vline
WA_FELD_STR-TLCONF sy-vline
WA_FELD_STR-TLTEXT sy-vline
WA_FELD_STR-TLENTRY sy-vline
WA_FELD_STR-TLRADIOB sy-vline
WA_FELD_STR-TLCHECKB sy-vline
WA_FELD_STR-TLPUSHB sy-vline
WA_FELD_STR-TLNAMETYP sy-vline
WA_FELD_STR-TLNAMEFLD sy-vline
WA_FELD_STR-TLNAMEUEB sy-vline
WA_FELD_STR-TLNAMESEL sy-vline
WA_FELD_STR-TLNAMETIT sy-vline
WA_FELD_STR-TLFELDFIX sy-vline
WA_FELD_STR-TLFIXANZ sy-vline
WA_FELD_STR-TLFELDNR sy-vline
WA_FELD_STR-TLFELDNR00 sy-vline
WA_FELD_STR-TLFELDSPBR sy-vline
WA_FELD_STR-SPCELL1 sy-vline
WA_FELD_STR-SPCELL2 sy-vline
WA_FELD_STR-SPSPLITTHORIZ sy-vline
WA_FELD_STR-SPSPLITTVERT sy-vline
WA_FELD_STR-SPSASH sy-vline
WA_FELD_STR-OUTPUTSTYLE sy-vline
WA_FELD_STR-SIGN sy-vline
WA_FELD_STR-NOINPUTHISTORY sy-vline
WA_FELD_STR-AMPMENABLED sy-vline
WA_FELD_STR-EXTEND sy-vline
WA_FELD_STR-HIERARCHY sy-vline
WA_FELD_STR-ICON sy-vline
WA_FELD_STR-ICON_N sy-vline
WA_FELD_STR-ICON_T sy-vline
WA_FELD_STR-ICON_L sy-vline
WA_FELD_STR-ICON_Q sy-vline
WA_FELD_STR-ICON_B sy-vline
WA_FELD_STR-ICON_X sy-vline
WA_FELD_STR-FLDP sy-vline
WA_FELD_STR-FLDN sy-vline
WA_FELD_STR-PROG sy-vline
WA_FELD_STR-DNUM sy-vline
WA_FELD_STR-PBO_F sy-vline
WA_FELD_STR-PBO_L sy-vline
WA_FELD_STR-PAI_F sy-vline
WA_FELD_STR-PAI_L sy-vline
WA_FELD_STR-EXTEXT sy-vline
WA_FELD_STR-EXENTRY sy-vline
WA_FELD_STR-EXRADIO sy-vline
WA_FELD_STR-EXCHECK sy-vline
WA_FELD_STR-EXPUSH sy-vline
WA_FELD_STR-EXFRAME sy-vline
WA_FELD_STR-EXTABCTRL sy-vline
WA_FELD_STR-EXCUSTOM sy-vline
WA_FELD_STR-EXTSTRCTRL sy-vline
WA_FELD_STR-EXSUBSCR sy-vline
WA_FELD_STR-EXSPLITTER sy-vline
WA_FELD_STR-EXSHOW sy-vline
WA_FELD_STR-MSG_LINE1 sy-vline
WA_FELD_STR-MSG_LINE2 sy-vline
WA_FELD_STR-PROPSHOW sy-vline
WA_FELD_STR-PROPNAME sy-vline
WA_FELD_STR-PROPBOOL sy-vline
WA_FELD_STR-PROPSTRING sy-vline
WA_FELD_STR-TSVHEIGHT sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.