ABAP Select data from SAP table MCBCOKZ 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 MCBCOKZ 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 MCBCOKZ. 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 MCBCOKZ 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_MCBCOKZ TYPE STANDARD TABLE OF MCBCOKZ,
      WA_MCBCOKZ TYPE MCBCOKZ,
      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: <MCBCOKZ> TYPE MCBCOKZ.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM MCBCOKZ
*  INTO TABLE @DATA(IT_MCBCOKZ2).
*--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_MCBCOKZ INDEX 1 INTO DATA(WA_MCBCOKZ2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_MCBCOKZ ASSIGNING <MCBCOKZ>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<MCBCOKZ>-AZUBB = 1.
<MCBCOKZ>-AZUKB = 1.
<MCBCOKZ>-AAGBB = 1.
<MCBCOKZ>-AAGKB = 1.
<MCBCOKZ>-AMBWG = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_MCBCOKZ-AGVBR, sy-vline,
WA_MCBCOKZ-AUVBR, sy-vline,
WA_MCBCOKZ-ASTOR, sy-vline,
WA_MCBCOKZ-BBNULL, sy-vline,
WA_MCBCOKZ-KBNULL, sy-vline,
WA_MCBCOKZ-GBNULL, sy-vline.
ENDLOOP. *Add any further fields from structure WA_MCBCOKZ 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_MCBCOKZ 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_MCBCOKZ INTO WA_MCBCOKZ. *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_MCBCOKZ_STR,
AZUBB TYPE STRING,
AZUKB TYPE STRING,
AAGBB TYPE STRING,
AAGKB TYPE STRING,
AMBWG TYPE STRING,
AGVBR TYPE STRING,
AUVBR TYPE STRING,
ASTOR TYPE STRING,
BBNULL TYPE STRING,
KBNULL TYPE STRING,
GBNULL TYPE STRING,
DBWBEST TYPE STRING,
DKOBEST TYPE STRING,
DGSBEST TYPE STRING,
DWBWBEST TYPE STRING,
DKABEST TYPE STRING,
DPRBEST TYPE STRING,
DWKABEST TYPE STRING,
DWPRBEST TYPE STRING,
DGVBR TYPE STRING,
DWGVBR TYPE STRING,
DUVBR TYPE STRING,
DWUVBR TYPE STRING,
RWBEWBEST TYPE STRING,
RWKOBEST TYPE STRING,
RWGSBEST TYPE STRING,
DRWBWBEST TYPE STRING,
DRWKOBEST TYPE STRING,
DRWGSBEST TYPE STRING,
RWWBWBEST TYPE STRING,
RWWGSBEST TYPE STRING,
DRWWBWBEST TYPE STRING,
DRWWGSBEST TYPE STRING,
DUHBWBEST TYPE STRING,
JUHBWBEST TYPE STRING,
UHBWBEST TYPE STRING,
DUHWBWBEST TYPE STRING,
JUHWBWBEST TYPE STRING,
UHWBWBEST TYPE STRING,
DUHKOBEST TYPE STRING,
JUHKOBEST TYPE STRING,
UHKOBEST TYPE STRING,
DUHGSBEST TYPE STRING,
JUHGSBEST TYPE STRING,
UHGSBEST TYPE STRING,
DUHWGSBEST TYPE STRING,
UHWGSBEST TYPE STRING,
JUHWGSBEST TYPE STRING,
RWKABEST TYPE STRING,
RWPRBEST TYPE STRING,
DRWKABEST TYPE STRING,
DRWPRBEST TYPE STRING,
DUHKABEST TYPE STRING,
DUHPRBEST TYPE STRING,
JUHKABEST TYPE STRING,
JUHPRBEST TYPE STRING,
UHKABEST TYPE STRING,
UHPRBEST TYPE STRING,
WESANZ TYPE STRING,
RTEANZ TYPE STRING,
ULEANZ TYPE STRING,
ULAANZ TYPE STRING,
AUEANZ TYPE STRING,
AUAANZ TYPE STRING,
BKPANZ TYPE STRING,
BKMANZ TYPE STRING,
BKIPAZ TYPE STRING,
BKIMAZ TYPE STRING,
BKSPAZ TYPE STRING,
BKSMAZ TYPE STRING,
KMEANZ TYPE STRING,
KMAANZ TYPE STRING,
BVLANZ TYPE STRING,
UBPEAZ TYPE STRING,
UBMEAZ TYPE STRING,
UBPVAZ TYPE STRING,
UBMVAZ TYPE STRING,
BBZANZ TYPE STRING,
BBAANZ TYPE STRING,
KAVANZ TYPE STRING,
RAVANZ TYPE STRING,
LIFANZ TYPE STRING,
RLFANZ TYPE STRING,
SAVANZ TYPE STRING,
BIWANZ TYPE STRING,
DUMMY TYPE STRING,END OF T_EKKO_STR. DATA: WA_MCBCOKZ_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_MCBCOKZ_STR-AZUBB sy-vline
WA_MCBCOKZ_STR-AZUKB sy-vline
WA_MCBCOKZ_STR-AAGBB sy-vline
WA_MCBCOKZ_STR-AAGKB sy-vline
WA_MCBCOKZ_STR-AMBWG sy-vline
WA_MCBCOKZ_STR-AGVBR sy-vline
WA_MCBCOKZ_STR-AUVBR sy-vline
WA_MCBCOKZ_STR-ASTOR sy-vline
WA_MCBCOKZ_STR-BBNULL sy-vline
WA_MCBCOKZ_STR-KBNULL sy-vline
WA_MCBCOKZ_STR-GBNULL sy-vline
WA_MCBCOKZ_STR-DBWBEST sy-vline
WA_MCBCOKZ_STR-DKOBEST sy-vline
WA_MCBCOKZ_STR-DGSBEST sy-vline
WA_MCBCOKZ_STR-DWBWBEST sy-vline
WA_MCBCOKZ_STR-DKABEST sy-vline
WA_MCBCOKZ_STR-DPRBEST sy-vline
WA_MCBCOKZ_STR-DWKABEST sy-vline
WA_MCBCOKZ_STR-DWPRBEST sy-vline
WA_MCBCOKZ_STR-DGVBR sy-vline
WA_MCBCOKZ_STR-DWGVBR sy-vline
WA_MCBCOKZ_STR-DUVBR sy-vline
WA_MCBCOKZ_STR-DWUVBR sy-vline
WA_MCBCOKZ_STR-RWBEWBEST sy-vline
WA_MCBCOKZ_STR-RWKOBEST sy-vline
WA_MCBCOKZ_STR-RWGSBEST sy-vline
WA_MCBCOKZ_STR-DRWBWBEST sy-vline
WA_MCBCOKZ_STR-DRWKOBEST sy-vline
WA_MCBCOKZ_STR-DRWGSBEST sy-vline
WA_MCBCOKZ_STR-RWWBWBEST sy-vline
WA_MCBCOKZ_STR-RWWGSBEST sy-vline
WA_MCBCOKZ_STR-DRWWBWBEST sy-vline
WA_MCBCOKZ_STR-DRWWGSBEST sy-vline
WA_MCBCOKZ_STR-DUHBWBEST sy-vline
WA_MCBCOKZ_STR-JUHBWBEST sy-vline
WA_MCBCOKZ_STR-UHBWBEST sy-vline
WA_MCBCOKZ_STR-DUHWBWBEST sy-vline
WA_MCBCOKZ_STR-JUHWBWBEST sy-vline
WA_MCBCOKZ_STR-UHWBWBEST sy-vline
WA_MCBCOKZ_STR-DUHKOBEST sy-vline
WA_MCBCOKZ_STR-JUHKOBEST sy-vline
WA_MCBCOKZ_STR-UHKOBEST sy-vline
WA_MCBCOKZ_STR-DUHGSBEST sy-vline
WA_MCBCOKZ_STR-JUHGSBEST sy-vline
WA_MCBCOKZ_STR-UHGSBEST sy-vline
WA_MCBCOKZ_STR-DUHWGSBEST sy-vline
WA_MCBCOKZ_STR-UHWGSBEST sy-vline
WA_MCBCOKZ_STR-JUHWGSBEST sy-vline
WA_MCBCOKZ_STR-RWKABEST sy-vline
WA_MCBCOKZ_STR-RWPRBEST sy-vline
WA_MCBCOKZ_STR-DRWKABEST sy-vline
WA_MCBCOKZ_STR-DRWPRBEST sy-vline
WA_MCBCOKZ_STR-DUHKABEST sy-vline
WA_MCBCOKZ_STR-DUHPRBEST sy-vline
WA_MCBCOKZ_STR-JUHKABEST sy-vline
WA_MCBCOKZ_STR-JUHPRBEST sy-vline
WA_MCBCOKZ_STR-UHKABEST sy-vline
WA_MCBCOKZ_STR-UHPRBEST sy-vline
WA_MCBCOKZ_STR-WESANZ sy-vline
WA_MCBCOKZ_STR-RTEANZ sy-vline
WA_MCBCOKZ_STR-ULEANZ sy-vline
WA_MCBCOKZ_STR-ULAANZ sy-vline
WA_MCBCOKZ_STR-AUEANZ sy-vline
WA_MCBCOKZ_STR-AUAANZ sy-vline
WA_MCBCOKZ_STR-BKPANZ sy-vline
WA_MCBCOKZ_STR-BKMANZ sy-vline
WA_MCBCOKZ_STR-BKIPAZ sy-vline
WA_MCBCOKZ_STR-BKIMAZ sy-vline
WA_MCBCOKZ_STR-BKSPAZ sy-vline
WA_MCBCOKZ_STR-BKSMAZ sy-vline
WA_MCBCOKZ_STR-KMEANZ sy-vline
WA_MCBCOKZ_STR-KMAANZ sy-vline
WA_MCBCOKZ_STR-BVLANZ sy-vline
WA_MCBCOKZ_STR-UBPEAZ sy-vline
WA_MCBCOKZ_STR-UBMEAZ sy-vline
WA_MCBCOKZ_STR-UBPVAZ sy-vline
WA_MCBCOKZ_STR-UBMVAZ sy-vline
WA_MCBCOKZ_STR-BBZANZ sy-vline
WA_MCBCOKZ_STR-BBAANZ sy-vline
WA_MCBCOKZ_STR-KAVANZ sy-vline
WA_MCBCOKZ_STR-RAVANZ sy-vline
WA_MCBCOKZ_STR-LIFANZ sy-vline
WA_MCBCOKZ_STR-RLFANZ sy-vline
WA_MCBCOKZ_STR-SAVANZ sy-vline
WA_MCBCOKZ_STR-BIWANZ sy-vline
WA_MCBCOKZ_STR-DUMMY sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.