ABAP Select data from SAP table FKKZWFEWB 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 FKKZWFEWB 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 FKKZWFEWB. 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 FKKZWFEWB 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_FKKZWFEWB TYPE STANDARD TABLE OF FKKZWFEWB,
      WA_FKKZWFEWB TYPE FKKZWFEWB,
      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: <FKKZWFEWB> TYPE FKKZWFEWB.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM FKKZWFEWB
*  INTO TABLE @DATA(IT_FKKZWFEWB2).
*--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_FKKZWFEWB INDEX 1 INTO DATA(WA_FKKZWFEWB2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_FKKZWFEWB ASSIGNING <FKKZWFEWB>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<FKKZWFEWB>-LDGRP = 1.
<FKKZWFEWB>-BUKRS = 1.
<FKKZWFEWB>-GSBER = 1.
<FKKZWFEWB>-BWBER = 1.
<FKKZWFEWB>-GRUND = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_FKKZWFEWB-SEGMENT, sy-vline,
WA_FKKZWFEWB-WZKON, sy-vline,
WA_FKKZWFEWB-HKONT, sy-vline,
WA_FKKZWFEWB-WAERS, sy-vline,
WA_FKKZWFEWB-WZUBT, sy-vline,
WA_FKKZWFEWB-WZUBTH, sy-vline.
ENDLOOP. *Add any further fields from structure WA_FKKZWFEWB 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_FKKZWFEWB 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_FKKZWFEWB INTO WA_FKKZWFEWB. *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.

*Conversion exit ALPHA, internal->external for field SEGMENT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-SEGMENT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-SEGMENT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WZKON CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WZKON IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WZKON.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field HKONT CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-HKONT IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-HKONT.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WZKKO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WZKKO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WZKKO.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WBKKO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WBKKO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WBKKO.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WBAKO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WBAKO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WBAKO.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WBAAK CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WBAAK IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WBAAK.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WBAEK CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WBAEK IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WBAEK.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field COUNT_DOCS CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-COUNT_DOCS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-COUNT_DOCS.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field VBUND CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-VBUND IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-VBUND.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field WBSKO CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_FKKZWFEWB-WBSKO IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_FKKZWFEWB-WBSKO.
WRITE:/ 'New Value:', ld_input.
ENDFORM. *&---------------------------------------------------------------------* *& Form process_as_string_field_values *&---------------------------------------------------------------------* FORM process_as_string_field_values CHANGING p_EKKO LIKE wa_EKKO. TYPES: BEGIN OF T_FKKZWFEWB_STR,
LDGRP TYPE STRING,
BUKRS TYPE STRING,
GSBER TYPE STRING,
BWBER TYPE STRING,
GRUND TYPE STRING,
SEGMENT TYPE STRING,
WZKON TYPE STRING,
HKONT TYPE STRING,
WAERS TYPE STRING,
WZUBT TYPE STRING,
WZUBTH TYPE STRING,
WZUBT2 TYPE STRING,
WZUBT3 TYPE STRING,
WZKKO TYPE STRING,
WBKKO TYPE STRING,
WBAKO TYPE STRING,
WBAAK TYPE STRING,
WBAEK TYPE STRING,
SBETU TYPE STRING,
SBETUH TYPE STRING,
SBETU2 TYPE STRING,
SBETU3 TYPE STRING,
WBUBT TYPE STRING,
WBUBTH TYPE STRING,
WBUBT2 TYPE STRING,
WBUBT3 TYPE STRING,
EWMWS TYPE STRING,
AWSTB TYPE STRING,
TXJCD TYPE STRING,
COUNT_DOCS TYPE STRING,
SIGN TYPE STRING,
VBUND TYPE STRING,
BUPLA TYPE STRING,
WBSKO TYPE STRING,
RUNTYPE TYPE STRING,END OF T_EKKO_STR. DATA: WA_FKKZWFEWB_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_FKKZWFEWB_STR-LDGRP sy-vline
WA_FKKZWFEWB_STR-BUKRS sy-vline
WA_FKKZWFEWB_STR-GSBER sy-vline
WA_FKKZWFEWB_STR-BWBER sy-vline
WA_FKKZWFEWB_STR-GRUND sy-vline
WA_FKKZWFEWB_STR-SEGMENT sy-vline
WA_FKKZWFEWB_STR-WZKON sy-vline
WA_FKKZWFEWB_STR-HKONT sy-vline
WA_FKKZWFEWB_STR-WAERS sy-vline
WA_FKKZWFEWB_STR-WZUBT sy-vline
WA_FKKZWFEWB_STR-WZUBTH sy-vline
WA_FKKZWFEWB_STR-WZUBT2 sy-vline
WA_FKKZWFEWB_STR-WZUBT3 sy-vline
WA_FKKZWFEWB_STR-WZKKO sy-vline
WA_FKKZWFEWB_STR-WBKKO sy-vline
WA_FKKZWFEWB_STR-WBAKO sy-vline
WA_FKKZWFEWB_STR-WBAAK sy-vline
WA_FKKZWFEWB_STR-WBAEK sy-vline
WA_FKKZWFEWB_STR-SBETU sy-vline
WA_FKKZWFEWB_STR-SBETUH sy-vline
WA_FKKZWFEWB_STR-SBETU2 sy-vline
WA_FKKZWFEWB_STR-SBETU3 sy-vline
WA_FKKZWFEWB_STR-WBUBT sy-vline
WA_FKKZWFEWB_STR-WBUBTH sy-vline
WA_FKKZWFEWB_STR-WBUBT2 sy-vline
WA_FKKZWFEWB_STR-WBUBT3 sy-vline
WA_FKKZWFEWB_STR-EWMWS sy-vline
WA_FKKZWFEWB_STR-AWSTB sy-vline
WA_FKKZWFEWB_STR-TXJCD sy-vline
WA_FKKZWFEWB_STR-COUNT_DOCS sy-vline
WA_FKKZWFEWB_STR-SIGN sy-vline
WA_FKKZWFEWB_STR-VBUND sy-vline
WA_FKKZWFEWB_STR-BUPLA sy-vline
WA_FKKZWFEWB_STR-WBSKO sy-vline
WA_FKKZWFEWB_STR-RUNTYPE sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.