ABAP Select data from SAP table /1BCDWB/IQG000000000063 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 /1BCDWB/IQG000000000063 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 /1BCDWB/IQG000000000063. 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 /1BCDWB/IQG000000000063 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_/1BCDWB/IQG000000000063 TYPE STANDARD TABLE OF /1BCDWB/IQG000000000063,
      WA_/1BCDWB/IQG000000000063 TYPE /1BCDWB/IQG000000000063,
      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: </1BCDWB/IQG000000000063> TYPE /1BCDWB/IQG000000000063.

*Process all fields in table header/work area as string values
  PERFORM process_as_string_field_values CHANGING wa_/1BCDWB/IQG000000000063.

SELECT *
*restrict ABAP select to first 10 rows
 UP TO 10 ROWS      
  FROM /1BCDWB/IQG000000000063
  INTO TABLE IT_/1BCDWB/IQG000000000063.

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM /1BCDWB/IQG000000000063
*  INTO TABLE @DATA(IT_/1BCDWB/IQG0000000000632).
*--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_/1BCDWB/IQG000000000063 INDEX 1 INTO DATA(WA_/1BCDWB/IQG0000000000632).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_/1BCDWB/IQG000000000063 ASSIGNING </1BCDWB/IQG000000000063>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
</1BCDWB/IQG000000000063>-AUFNR = 1.
</1BCDWB/IQG000000000063>-TEXT__SREP_IS_RKKBALV1_AUFNR = 1.
</1BCDWB/IQG000000000063>-MATNR = 1.
</1BCDWB/IQG000000000063>-TEXT__SREP_IS_RKKBALV1_MATNR = 1.
</1BCDWB/IQG000000000063>-PLANBEL_G = 1.
ENDLOOP.

LOOP AT IT_/1BCDWB/IQG000000000063 INTO WA_/1BCDWB/IQG000000000063.
*Write horizonal line to screen report.
  WRITE:/ sy-uline.

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_/1BCDWB/IQG000000000063-WAERS, sy-vline,
WA_/1BCDWB/IQG000000000063-AUTYP, sy-vline,
WA_/1BCDWB/IQG000000000063-TEXT__SREP_IS_RKKBALV1_AUTYP, sy-vline,
WA_/1BCDWB/IQG000000000063-PLANMENGE, sy-vline,
WA_/1BCDWB/IQG000000000063-MEINH, sy-vline,
WA_/1BCDWB/IQG000000000063-ISTMENGE, sy-vline.
ENDLOOP. *Add any further fields from structure WA_/1BCDWB/IQG000000000063 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_/1BCDWB/IQG000000000063 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_/1BCDWB/IQG000000000063 INTO WA_/1BCDWB/IQG000000000063. *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 AUFNR CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_/1BCDWB/IQG000000000063-AUFNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/1BCDWB/IQG000000000063-AUFNR.
WRITE:/ 'New Value:', ld_input.

*Conversion exit MATN1, internal->external for field MATNR CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' EXPORTING input = WA_/1BCDWB/IQG000000000063-MATNR IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/1BCDWB/IQG000000000063-MATNR.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field MEINH CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_/1BCDWB/IQG000000000063-MEINH IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/1BCDWB/IQG000000000063-MEINH.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field MEINH001 CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_/1BCDWB/IQG000000000063-MEINH001 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/1BCDWB/IQG000000000063-MEINH001.
WRITE:/ 'New Value:', ld_input.

*Conversion exit CUNIT, internal->external for field MEINH002 CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = WA_/1BCDWB/IQG000000000063-MEINH002 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/1BCDWB/IQG000000000063-MEINH002.
WRITE:/ 'New Value:', ld_input.

*Conversion exit ALPHA, internal->external for field AVERS CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_/1BCDWB/IQG000000000063-AVERS IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_/1BCDWB/IQG000000000063-AVERS.
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_/1BCDWB/IQG000000000063_STR,
AUFNR TYPE STRING,
TEXT__SREP_IS_RKKBALV1_AUFNR TYPE STRING,
MATNR TYPE STRING,
TEXT__SREP_IS_RKKBALV1_MATNR TYPE STRING,
PLANBEL_G TYPE STRING,
WAERS TYPE STRING,
AUTYP TYPE STRING,
TEXT__SREP_IS_RKKBALV1_AUTYP TYPE STRING,
PLANMENGE TYPE STRING,
MEINH TYPE STRING,
ISTMENGE TYPE STRING,
MEINH001 TYPE STRING,
PLIS_KOST_A TYPE STRING,
WAERS001 TYPE STRING,
PLIS_MEABS TYPE STRING,
MEINH002 TYPE STRING,
PLIS_MEPRC TYPE STRING,
WERKS TYPE STRING,
TEXT__SREP_IS_RKKBALV1_WERKS TYPE STRING,
PLIS_KOST_P TYPE STRING,
PLANKOST_G TYPE STRING,
WAERS002 TYPE STRING,
PLANKOST_F TYPE STRING,
WAERS003 TYPE STRING,
PLANBEL_F TYPE STRING,
WAERS004 TYPE STRING,
PLANKOST_V TYPE STRING,
WAERS005 TYPE STRING,
PLANBEL_V TYPE STRING,
WAERS006 TYPE STRING,
PLANENTL_G TYPE STRING,
WAERS007 TYPE STRING,
PLANENTL_F TYPE STRING,
WAERS008 TYPE STRING,
PLANENTL_V TYPE STRING,
WAERS009 TYPE STRING,
ISTKOST_G TYPE STRING,
WAERS010 TYPE STRING,
ISTKOST_F TYPE STRING,
WAERS011 TYPE STRING,
ISTKOST_V TYPE STRING,
WAERS012 TYPE STRING,
ISTENTL_G TYPE STRING,
WAERS013 TYPE STRING,
SOLLKOST_G TYPE STRING,
WAERS014 TYPE STRING,
ISTBEL_F TYPE STRING,
WAERS015 TYPE STRING,
SOLLBEL_G TYPE STRING,
WAERS016 TYPE STRING,
ISTBEL_V TYPE STRING,
WAERS017 TYPE STRING,
SOLLENTL_G TYPE STRING,
WAERS018 TYPE STRING,
ISTENTL_F TYPE STRING,
WAERS019 TYPE STRING,
ISTENTL_V TYPE STRING,
WAERS020 TYPE STRING,
ABWPREIS TYPE STRING,
WAERS021 TYPE STRING,
ABWMENG TYPE STRING,
WAERS022 TYPE STRING,
ABWSTRUKT TYPE STRING,
WAERS023 TYPE STRING,
ABWEINS TYPE STRING,
WAERS024 TYPE STRING,
ABWFIXKO TYPE STRING,
WAERS025 TYPE STRING,
ABWVERRP TYPE STRING,
WAERS026 TYPE STRING,
ABWREST TYPE STRING,
WAERS027 TYPE STRING,
ABWGES TYPE STRING,
WAERS028 TYPE STRING,
AUSSCH TYPE STRING,
WAERS029 TYPE STRING,
AVERS TYPE STRING,
ABGRWIP TYPE STRING,
WAERS030 TYPE STRING,
ABGRUEKFK TYPE STRING,
WAERS031 TYPE STRING,
ABGRUEKDV TYPE STRING,
WAERS032 TYPE STRING,
ABGERGERL TYPE STRING,
WAERS033 TYPE STRING,
ABWMISCHP TYPE STRING,
WAERS034 TYPE STRING,
ABWVERM TYPE STRING,
WAERS035 TYPE STRING,
SOIS_KOST_A TYPE STRING,
WAERS036 TYPE STRING,
SOKO_KOST_A TYPE STRING,
WAERS037 TYPE STRING,
SOIS_KOST_P TYPE STRING,END OF T_EKKO_STR. DATA: WA_/1BCDWB/IQG000000000063_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_/1BCDWB/IQG000000000063_STR-AUFNR sy-vline
WA_/1BCDWB/IQG000000000063_STR-TEXT__SREP_IS_RKKBALV1_AUFNR sy-vline
WA_/1BCDWB/IQG000000000063_STR-MATNR sy-vline
WA_/1BCDWB/IQG000000000063_STR-TEXT__SREP_IS_RKKBALV1_MATNR sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANBEL_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS sy-vline
WA_/1BCDWB/IQG000000000063_STR-AUTYP sy-vline
WA_/1BCDWB/IQG000000000063_STR-TEXT__SREP_IS_RKKBALV1_AUTYP sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANMENGE sy-vline
WA_/1BCDWB/IQG000000000063_STR-MEINH sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTMENGE sy-vline
WA_/1BCDWB/IQG000000000063_STR-MEINH001 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLIS_KOST_A sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS001 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLIS_MEABS sy-vline
WA_/1BCDWB/IQG000000000063_STR-MEINH002 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLIS_MEPRC sy-vline
WA_/1BCDWB/IQG000000000063_STR-WERKS sy-vline
WA_/1BCDWB/IQG000000000063_STR-TEXT__SREP_IS_RKKBALV1_WERKS sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLIS_KOST_P sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANKOST_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS002 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANKOST_F sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS003 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANBEL_F sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS004 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANKOST_V sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS005 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANBEL_V sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS006 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANENTL_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS007 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANENTL_F sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS008 sy-vline
WA_/1BCDWB/IQG000000000063_STR-PLANENTL_V sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS009 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTKOST_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS010 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTKOST_F sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS011 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTKOST_V sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS012 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTENTL_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS013 sy-vline
WA_/1BCDWB/IQG000000000063_STR-SOLLKOST_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS014 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTBEL_F sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS015 sy-vline
WA_/1BCDWB/IQG000000000063_STR-SOLLBEL_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS016 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTBEL_V sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS017 sy-vline
WA_/1BCDWB/IQG000000000063_STR-SOLLENTL_G sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS018 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTENTL_F sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS019 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ISTENTL_V sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS020 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWPREIS sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS021 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWMENG sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS022 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWSTRUKT sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS023 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWEINS sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS024 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWFIXKO sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS025 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWVERRP sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS026 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWREST sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS027 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWGES sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS028 sy-vline
WA_/1BCDWB/IQG000000000063_STR-AUSSCH sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS029 sy-vline
WA_/1BCDWB/IQG000000000063_STR-AVERS sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABGRWIP sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS030 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABGRUEKFK sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS031 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABGRUEKDV sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS032 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABGERGERL sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS033 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWMISCHP sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS034 sy-vline
WA_/1BCDWB/IQG000000000063_STR-ABWVERM sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS035 sy-vline
WA_/1BCDWB/IQG000000000063_STR-SOIS_KOST_A sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS036 sy-vline
WA_/1BCDWB/IQG000000000063_STR-SOKO_KOST_A sy-vline
WA_/1BCDWB/IQG000000000063_STR-WAERS037 sy-vline
WA_/1BCDWB/IQG000000000063_STR-SOIS_KOST_P sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.