ABAP Select data from SAP table SIMAFLDSTEXT 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 SIMAFLDSTEXT 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 SIMAFLDSTEXT. 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 SIMAFLDSTEXT 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_SIMAFLDSTEXT TYPE STANDARD TABLE OF SIMAFLDSTEXT,
      WA_SIMAFLDSTEXT TYPE SIMAFLDSTEXT,
      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: <SIMAFLDSTEXT> TYPE SIMAFLDSTEXT.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM SIMAFLDSTEXT
*  INTO TABLE @DATA(IT_SIMAFLDSTEXT2).
*--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_SIMAFLDSTEXT INDEX 1 INTO DATA(WA_SIMAFLDSTEXT2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_SIMAFLDSTEXT ASSIGNING <SIMAFLDSTEXT>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<SIMAFLDSTEXT>-TREASON_DUN = 1.
<SIMAFLDSTEXT>-TREASON_IPAY = 1.
<SIMAFLDSTEXT>-TREASON_OPAY = 1.
<SIMAFLDSTEXT>-TREASON_POST = 1.
<SIMAFLDSTEXT>-TREASON_INT = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_SIMAFLDSTEXT-TREASON_INV, sy-vline,
WA_SIMAFLDSTEXT-TREASON_COD, sy-vline,
WA_SIMAFLDSTEXT-TREASON_BRO, sy-vline,
WA_SIMAFLDSTEXT-TREASON_DUN_PPP, sy-vline,
WA_SIMAFLDSTEXT-TREASON_PAY_PPP, sy-vline,
WA_SIMAFLDSTEXT-TREASON_CLR_PPP, sy-vline.
ENDLOOP. *Add any further fields from structure WA_SIMAFLDSTEXT 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_SIMAFLDSTEXT 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_SIMAFLDSTEXT INTO WA_SIMAFLDSTEXT. *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_SIMAFLDSTEXT_STR,
TREASON_DUN TYPE STRING,
TREASON_IPAY TYPE STRING,
TREASON_OPAY TYPE STRING,
TREASON_POST TYPE STRING,
TREASON_INT TYPE STRING,
TREASON_INV TYPE STRING,
TREASON_COD TYPE STRING,
TREASON_BRO TYPE STRING,
TREASON_DUN_PPP TYPE STRING,
TREASON_PAY_PPP TYPE STRING,
TREASON_CLR_PPP TYPE STRING,
TREASON_INT_PPP TYPE STRING,
TINSOBJECTTYPC TYPE STRING,
TVKTYP TYPE STRING,
TPARTNER TYPE STRING,
TCPERS TYPE STRING,
TABWRE_NAME TYPE STRING,
TABWRA_NAME TYPE STRING,
TBROKER TYPE STRING,
TBROKER_TC TYPE STRING,
COPARTNERTXT TYPE STRING,
TDEF_REC TYPE STRING,
TOPAYPARTNER TYPE STRING,
TGPARV TYPE STRING,
TCB_GPART TYPE STRING,
TRCL_PARTNER TYPE STRING,
TEMGPA TYPE STRING,
TVGPART2 TYPE STRING,
TVGPART3 TYPE STRING,
TALTBROK TYPE STRING,
TALTBRCO TYPE STRING,
TADRNR TYPE STRING,
TABWRE_ADR TYPE STRING,
TABWRA_ADR TYPE STRING,
TOPAY_ADR TYPE STRING,
TEMGPA_ADR TYPE STRING,
TPARAM_ACTIV TYPE STRING,
TPARAM_INACTIV TYPE STRING,
TCPARAM_ACTIV TYPE STRING,
TCPARAM_INACTIV TYPE STRING,
TPYMET TYPE STRING,
TEZAWE TYPE STRING,
TAZAWE TYPE STRING,
TEBVTY TYPE STRING,
TABVTY TYPE STRING,
TOPAYABVTY TYPE STRING,
TEMBVT TYPE STRING,
TCCARDIN TYPE STRING,
TCCARDOUT TYPE STRING,
TOPAYCCARDOUT TYPE STRING,
TEMCCID TYPE STRING,
TQSSKZ_E TYPE STRING,
TQSSKZ_A TYPE STRING,
COTXT TYPE STRING,
COACTTXT TYPE STRING,
TDEF_REC_IND TYPE STRING,
TATART TYPE STRING,
TENDTYPE TYPE STRING,
TBLART TYPE STRING,
TCCODE TYPE STRING,
TOPCCODE TYPE STRING,
TGSBER TYPE STRING,
TOPGSBER TYPE STRING,
THVORG TYPE STRING,
TOPHVORG TYPE STRING,
TTVORG TYPE STRING,
TOPTVORG TYPE STRING,
TH_HKONT TYPE STRING,
TS_HKONT TYPE STRING,
TCOINS_CODE TYPE STRING,
TCOINS_CAT TYPE STRING,
TPRGRP TYPE STRING,
TVSARL_VX TYPE STRING,
TAUGRP TYPE STRING,
TQSSEW TYPE STRING,
T1099 TYPE STRING,
TPROC_CODE TYPE STRING,
TLDGRP TYPE STRING,
TMWSKZ TYPE STRING,
TQSSKZ TYPE STRING,
TSTRKZ TYPE STRING,
TINSTAXS TYPE STRING,
MNDID_TXT TYPE STRING,
TORIGFIKRS TYPE STRING,
TFMTYP TYPE STRING,
TFIPEX TYPE STRING,
TFISTL TYPE STRING,
TFONDS TYPE STRING,
TFKBER TYPE STRING,
TGRANT_NBR TYPE STRING,
TBUDGET_PD TYPE STRING,END OF T_EKKO_STR. DATA: WA_SIMAFLDSTEXT_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_SIMAFLDSTEXT_STR-TREASON_DUN sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_IPAY sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_OPAY sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_POST sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_INT sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_INV sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_COD sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_BRO sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_DUN_PPP sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_PAY_PPP sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_CLR_PPP sy-vline
WA_SIMAFLDSTEXT_STR-TREASON_INT_PPP sy-vline
WA_SIMAFLDSTEXT_STR-TINSOBJECTTYPC sy-vline
WA_SIMAFLDSTEXT_STR-TVKTYP sy-vline
WA_SIMAFLDSTEXT_STR-TPARTNER sy-vline
WA_SIMAFLDSTEXT_STR-TCPERS sy-vline
WA_SIMAFLDSTEXT_STR-TABWRE_NAME sy-vline
WA_SIMAFLDSTEXT_STR-TABWRA_NAME sy-vline
WA_SIMAFLDSTEXT_STR-TBROKER sy-vline
WA_SIMAFLDSTEXT_STR-TBROKER_TC sy-vline
WA_SIMAFLDSTEXT_STR-COPARTNERTXT sy-vline
WA_SIMAFLDSTEXT_STR-TDEF_REC sy-vline
WA_SIMAFLDSTEXT_STR-TOPAYPARTNER sy-vline
WA_SIMAFLDSTEXT_STR-TGPARV sy-vline
WA_SIMAFLDSTEXT_STR-TCB_GPART sy-vline
WA_SIMAFLDSTEXT_STR-TRCL_PARTNER sy-vline
WA_SIMAFLDSTEXT_STR-TEMGPA sy-vline
WA_SIMAFLDSTEXT_STR-TVGPART2 sy-vline
WA_SIMAFLDSTEXT_STR-TVGPART3 sy-vline
WA_SIMAFLDSTEXT_STR-TALTBROK sy-vline
WA_SIMAFLDSTEXT_STR-TALTBRCO sy-vline
WA_SIMAFLDSTEXT_STR-TADRNR sy-vline
WA_SIMAFLDSTEXT_STR-TABWRE_ADR sy-vline
WA_SIMAFLDSTEXT_STR-TABWRA_ADR sy-vline
WA_SIMAFLDSTEXT_STR-TOPAY_ADR sy-vline
WA_SIMAFLDSTEXT_STR-TEMGPA_ADR sy-vline
WA_SIMAFLDSTEXT_STR-TPARAM_ACTIV sy-vline
WA_SIMAFLDSTEXT_STR-TPARAM_INACTIV sy-vline
WA_SIMAFLDSTEXT_STR-TCPARAM_ACTIV sy-vline
WA_SIMAFLDSTEXT_STR-TCPARAM_INACTIV sy-vline
WA_SIMAFLDSTEXT_STR-TPYMET sy-vline
WA_SIMAFLDSTEXT_STR-TEZAWE sy-vline
WA_SIMAFLDSTEXT_STR-TAZAWE sy-vline
WA_SIMAFLDSTEXT_STR-TEBVTY sy-vline
WA_SIMAFLDSTEXT_STR-TABVTY sy-vline
WA_SIMAFLDSTEXT_STR-TOPAYABVTY sy-vline
WA_SIMAFLDSTEXT_STR-TEMBVT sy-vline
WA_SIMAFLDSTEXT_STR-TCCARDIN sy-vline
WA_SIMAFLDSTEXT_STR-TCCARDOUT sy-vline
WA_SIMAFLDSTEXT_STR-TOPAYCCARDOUT sy-vline
WA_SIMAFLDSTEXT_STR-TEMCCID sy-vline
WA_SIMAFLDSTEXT_STR-TQSSKZ_E sy-vline
WA_SIMAFLDSTEXT_STR-TQSSKZ_A sy-vline
WA_SIMAFLDSTEXT_STR-COTXT sy-vline
WA_SIMAFLDSTEXT_STR-COACTTXT sy-vline
WA_SIMAFLDSTEXT_STR-TDEF_REC_IND sy-vline
WA_SIMAFLDSTEXT_STR-TATART sy-vline
WA_SIMAFLDSTEXT_STR-TENDTYPE sy-vline
WA_SIMAFLDSTEXT_STR-TBLART sy-vline
WA_SIMAFLDSTEXT_STR-TCCODE sy-vline
WA_SIMAFLDSTEXT_STR-TOPCCODE sy-vline
WA_SIMAFLDSTEXT_STR-TGSBER sy-vline
WA_SIMAFLDSTEXT_STR-TOPGSBER sy-vline
WA_SIMAFLDSTEXT_STR-THVORG sy-vline
WA_SIMAFLDSTEXT_STR-TOPHVORG sy-vline
WA_SIMAFLDSTEXT_STR-TTVORG sy-vline
WA_SIMAFLDSTEXT_STR-TOPTVORG sy-vline
WA_SIMAFLDSTEXT_STR-TH_HKONT sy-vline
WA_SIMAFLDSTEXT_STR-TS_HKONT sy-vline
WA_SIMAFLDSTEXT_STR-TCOINS_CODE sy-vline
WA_SIMAFLDSTEXT_STR-TCOINS_CAT sy-vline
WA_SIMAFLDSTEXT_STR-TPRGRP sy-vline
WA_SIMAFLDSTEXT_STR-TVSARL_VX sy-vline
WA_SIMAFLDSTEXT_STR-TAUGRP sy-vline
WA_SIMAFLDSTEXT_STR-TQSSEW sy-vline
WA_SIMAFLDSTEXT_STR-T1099 sy-vline
WA_SIMAFLDSTEXT_STR-TPROC_CODE sy-vline
WA_SIMAFLDSTEXT_STR-TLDGRP sy-vline
WA_SIMAFLDSTEXT_STR-TMWSKZ sy-vline
WA_SIMAFLDSTEXT_STR-TQSSKZ sy-vline
WA_SIMAFLDSTEXT_STR-TSTRKZ sy-vline
WA_SIMAFLDSTEXT_STR-TINSTAXS sy-vline
WA_SIMAFLDSTEXT_STR-MNDID_TXT sy-vline
WA_SIMAFLDSTEXT_STR-TORIGFIKRS sy-vline
WA_SIMAFLDSTEXT_STR-TFMTYP sy-vline
WA_SIMAFLDSTEXT_STR-TFIPEX sy-vline
WA_SIMAFLDSTEXT_STR-TFISTL sy-vline
WA_SIMAFLDSTEXT_STR-TFONDS sy-vline
WA_SIMAFLDSTEXT_STR-TFKBER sy-vline
WA_SIMAFLDSTEXT_STR-TGRANT_NBR sy-vline
WA_SIMAFLDSTEXT_STR-TBUDGET_PD sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.