ABAP Select data from SAP table CRMST_ISTATUSH_ERPIL 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 CRMST_ISTATUSH_ERPIL 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 CRMST_ISTATUSH_ERPIL. 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 CRMST_ISTATUSH_ERPIL 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_CRMST_ISTATUSH_ERPIL TYPE STANDARD TABLE OF CRMST_ISTATUSH_ERPIL,
      WA_CRMST_ISTATUSH_ERPIL TYPE CRMST_ISTATUSH_ERPIL,
      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: <CRMST_ISTATUSH_ERPIL> TYPE CRMST_ISTATUSH_ERPIL.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM CRMST_ISTATUSH_ERPIL
*  INTO TABLE @DATA(IT_CRMST_ISTATUSH_ERPIL2).
*--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_CRMST_ISTATUSH_ERPIL INDEX 1 INTO DATA(WA_CRMST_ISTATUSH_ERPIL2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_CRMST_ISTATUSH_ERPIL ASSIGNING <CRMST_ISTATUSH_ERPIL>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<CRMST_ISTATUSH_ERPIL>-ABSTK = 1.
<CRMST_ISTATUSH_ERPIL>-BESTK = 1.
<CRMST_ISTATUSH_ERPIL>-BUCHK = 1.
<CRMST_ISTATUSH_ERPIL>-CMGST = 1.
<CRMST_ISTATUSH_ERPIL>-CMPS0 = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_CRMST_ISTATUSH_ERPIL-CMPS1, sy-vline,
WA_CRMST_ISTATUSH_ERPIL-CMPS2, sy-vline,
WA_CRMST_ISTATUSH_ERPIL-CMPSA, sy-vline,
WA_CRMST_ISTATUSH_ERPIL-CMPSB, sy-vline,
WA_CRMST_ISTATUSH_ERPIL-CMPSC, sy-vline,
WA_CRMST_ISTATUSH_ERPIL-CMPSD, sy-vline.
ENDLOOP. *Add any further fields from structure WA_CRMST_ISTATUSH_ERPIL 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_CRMST_ISTATUSH_ERPIL 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_CRMST_ISTATUSH_ERPIL INTO WA_CRMST_ISTATUSH_ERPIL. *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_CRMST_ISTATUSH_ERPIL_STR,
ABSTK TYPE STRING,
BESTK TYPE STRING,
BUCHK TYPE STRING,
CMGST TYPE STRING,
CMPS0 TYPE STRING,
CMPS1 TYPE STRING,
CMPS2 TYPE STRING,
CMPSA TYPE STRING,
CMPSB TYPE STRING,
CMPSC TYPE STRING,
CMPSD TYPE STRING,
CMPSE TYPE STRING,
CMPSF TYPE STRING,
CMPSG TYPE STRING,
CMPSH TYPE STRING,
CMPSI TYPE STRING,
CMPSJ TYPE STRING,
CMPSK TYPE STRING,
CMPSL TYPE STRING,
CMPSM TYPE STRING,
COSTA TYPE STRING,
DCSTK TYPE STRING,
FKIVK TYPE STRING,
FKSAK TYPE STRING,
FKSTK TYPE STRING,
FSSTK TYPE STRING,
GBSTK TYPE STRING,
KOQUK TYPE STRING,
KOSTK TYPE STRING,
LFGSK TYPE STRING,
LFSTK TYPE STRING,
LSSTK TYPE STRING,
LVSTK TYPE STRING,
PDSTK TYPE STRING,
PKSTK TYPE STRING,
RFGSK TYPE STRING,
RFSTK TYPE STRING,
SPSTG TYPE STRING,
TRSTA TYPE STRING,
UVALL TYPE STRING,
UVALS TYPE STRING,
UVFAK TYPE STRING,
UVFAS TYPE STRING,
UVVLK TYPE STRING,
UVVLS TYPE STRING,
WBSTK TYPE STRING,
ABSTK_T TYPE STRING,
BESTK_T TYPE STRING,
BUCHK_T TYPE STRING,
CMGST_T TYPE STRING,
CMPS0_T TYPE STRING,
CMPS1_T TYPE STRING,
CMPS2_T TYPE STRING,
CMPSA_T TYPE STRING,
CMPSB_T TYPE STRING,
CMPSC_T TYPE STRING,
CMPSD_T TYPE STRING,
CMPSE_T TYPE STRING,
CMPSF_T TYPE STRING,
CMPSG_T TYPE STRING,
CMPSH_T TYPE STRING,
CMPSI_T TYPE STRING,
CMPSJ_T TYPE STRING,
CMPSK_T TYPE STRING,
CMPSL_T TYPE STRING,
CMPSM_T TYPE STRING,
COSTA_T TYPE STRING,
DCSTK_T TYPE STRING,
FKIVK_T TYPE STRING,
FKSAK_T TYPE STRING,
FKSTK_T TYPE STRING,
FSSTK_T TYPE STRING,
GBSTK_T TYPE STRING,
KOQUK_T TYPE STRING,
KOSTK_T TYPE STRING,
LFGSK_T TYPE STRING,
LFSTK_T TYPE STRING,
LSSTK_T TYPE STRING,
LVSTK_T TYPE STRING,
PDSTK_T TYPE STRING,
PKSTK_T TYPE STRING,
RFGSK_T TYPE STRING,
RFSTK_T TYPE STRING,
SPSTG_T TYPE STRING,
TRSTA_T TYPE STRING,
UVALL_T TYPE STRING,
UVALS_T TYPE STRING,
UVFAK_T TYPE STRING,
UVFAS_T TYPE STRING,
UVVLK_T TYPE STRING,
UVVLS_T TYPE STRING,
WBSTK_T TYPE STRING,END OF T_EKKO_STR. DATA: WA_CRMST_ISTATUSH_ERPIL_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_CRMST_ISTATUSH_ERPIL_STR-ABSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-BESTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-BUCHK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMGST sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPS0 sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPS1 sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPS2 sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSA sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSB sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSC sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSD sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSE sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSF sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSG sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSH sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSI sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSJ sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSL sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSM sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-COSTA sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-DCSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FKIVK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FKSAK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FKSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FSSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-GBSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-KOQUK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-KOSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LFGSK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LFSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LSSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LVSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-PDSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-PKSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-RFGSK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-RFSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-SPSTG sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-TRSTA sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVALL sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVALS sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVFAK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVFAS sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVVLK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVVLS sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-WBSTK sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-ABSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-BESTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-BUCHK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMGST_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPS0_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPS1_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPS2_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSA_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSB_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSC_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSD_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSE_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSF_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSG_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSH_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSI_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSJ_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSL_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-CMPSM_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-COSTA_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-DCSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FKIVK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FKSAK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FKSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-FSSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-GBSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-KOQUK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-KOSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LFGSK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LFSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LSSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-LVSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-PDSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-PKSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-RFGSK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-RFSTK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-SPSTG_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-TRSTA_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVALL_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVALS_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVFAK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVFAS_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVVLK_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-UVVLS_T sy-vline
WA_CRMST_ISTATUSH_ERPIL_STR-WBSTK_T sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.