ABAP Select data from SAP table PRU_RSV1_S2 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 PRU_RSV1_S2 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 PRU_RSV1_S2. 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 PRU_RSV1_S2 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_PRU_RSV1_S2 TYPE STANDARD TABLE OF PRU_RSV1_S2,
      WA_PRU_RSV1_S2 TYPE PRU_RSV1_S2,
      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: <PRU_RSV1_S2> TYPE PRU_RSV1_S2.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM PRU_RSV1_S2
*  INTO TABLE @DATA(IT_PRU_RSV1_S22).
*--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_PRU_RSV1_S2 INDEX 1 INTO DATA(WA_PRU_RSV1_S22).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_PRU_RSV1_S2 ASSIGNING <PRU_RSV1_S2>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<PRU_RSV1_S2>-TARCD = 1.
<PRU_RSV1_S2>-T2013 = 1.
<PRU_RSV1_S2>-T2014 = 1.
<PRU_RSV1_S2>-T2015 = 1.
<PRU_RSV1_S2>-T2016 = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_PRU_RSV1_S2-T2023, sy-vline,
WA_PRU_RSV1_S2-T2024, sy-vline,
WA_PRU_RSV1_S2-T2025, sy-vline,
WA_PRU_RSV1_S2-T2026, sy-vline,
WA_PRU_RSV1_S2-T2033, sy-vline,
WA_PRU_RSV1_S2-T2034, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PRU_RSV1_S2 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_PRU_RSV1_S2 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_PRU_RSV1_S2 INTO WA_PRU_RSV1_S2. *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_PRU_RSV1_S2_STR,
TARCD TYPE STRING,
T2013 TYPE STRING,
T2014 TYPE STRING,
T2015 TYPE STRING,
T2016 TYPE STRING,
T2023 TYPE STRING,
T2024 TYPE STRING,
T2025 TYPE STRING,
T2026 TYPE STRING,
T2033 TYPE STRING,
T2034 TYPE STRING,
T2035 TYPE STRING,
T2036 TYPE STRING,
T2113 TYPE STRING,
T2114 TYPE STRING,
T2115 TYPE STRING,
T2116 TYPE STRING,
T2123 TYPE STRING,
T2124 TYPE STRING,
T2125 TYPE STRING,
T2126 TYPE STRING,
T2133 TYPE STRING,
T2134 TYPE STRING,
T2135 TYPE STRING,
T2136 TYPE STRING,
T2213 TYPE STRING,
T2214 TYPE STRING,
T2215 TYPE STRING,
T2216 TYPE STRING,
T2223 TYPE STRING,
T2224 TYPE STRING,
T2225 TYPE STRING,
T2226 TYPE STRING,
T2233 TYPE STRING,
T2234 TYPE STRING,
T2235 TYPE STRING,
T2236 TYPE STRING,
T2313 TYPE STRING,
T2314 TYPE STRING,
T2315 TYPE STRING,
T2316 TYPE STRING,
T2323 TYPE STRING,
T2324 TYPE STRING,
T2325 TYPE STRING,
T2326 TYPE STRING,
T2333 TYPE STRING,
T2334 TYPE STRING,
T2335 TYPE STRING,
T2336 TYPE STRING,
T2403 TYPE STRING,
T2404 TYPE STRING,
T2405 TYPE STRING,
T2406 TYPE STRING,
T2413 TYPE STRING,
T2414 TYPE STRING,
T2415 TYPE STRING,
T2416 TYPE STRING,
T2503 TYPE STRING,
T2504 TYPE STRING,
T2505 TYPE STRING,
T2506 TYPE STRING,
T2513 TYPE STRING,
T2514 TYPE STRING,
T2515 TYPE STRING,
T2516 TYPE STRING,
T2523 TYPE STRING,
T2524 TYPE STRING,
T2525 TYPE STRING,
T2526 TYPE STRING,
T2603 TYPE STRING,
T2604 TYPE STRING,
T2605 TYPE STRING,
T2606 TYPE STRING,
T2613 TYPE STRING,
T2614 TYPE STRING,
T2615 TYPE STRING,
T2616 TYPE STRING,
T2713 TYPE STRING,
T2714 TYPE STRING,
T2715 TYPE STRING,
T2716 TYPE STRING,
T2723 TYPE STRING,
T2724 TYPE STRING,
T2725 TYPE STRING,
T2726 TYPE STRING,
T2733 TYPE STRING,
T2734 TYPE STRING,
T2735 TYPE STRING,
T2736 TYPE STRING,
T2743 TYPE STRING,
T2744 TYPE STRING,
T2745 TYPE STRING,
T2746 TYPE STRING,
T2753 TYPE STRING,
T2754 TYPE STRING,
T2755 TYPE STRING,
T2756 TYPE STRING,
T2763 TYPE STRING,
T2764 TYPE STRING,
T2765 TYPE STRING,
T2766 TYPE STRING,END OF T_EKKO_STR. DATA: WA_PRU_RSV1_S2_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_PRU_RSV1_S2_STR-TARCD sy-vline
WA_PRU_RSV1_S2_STR-T2013 sy-vline
WA_PRU_RSV1_S2_STR-T2014 sy-vline
WA_PRU_RSV1_S2_STR-T2015 sy-vline
WA_PRU_RSV1_S2_STR-T2016 sy-vline
WA_PRU_RSV1_S2_STR-T2023 sy-vline
WA_PRU_RSV1_S2_STR-T2024 sy-vline
WA_PRU_RSV1_S2_STR-T2025 sy-vline
WA_PRU_RSV1_S2_STR-T2026 sy-vline
WA_PRU_RSV1_S2_STR-T2033 sy-vline
WA_PRU_RSV1_S2_STR-T2034 sy-vline
WA_PRU_RSV1_S2_STR-T2035 sy-vline
WA_PRU_RSV1_S2_STR-T2036 sy-vline
WA_PRU_RSV1_S2_STR-T2113 sy-vline
WA_PRU_RSV1_S2_STR-T2114 sy-vline
WA_PRU_RSV1_S2_STR-T2115 sy-vline
WA_PRU_RSV1_S2_STR-T2116 sy-vline
WA_PRU_RSV1_S2_STR-T2123 sy-vline
WA_PRU_RSV1_S2_STR-T2124 sy-vline
WA_PRU_RSV1_S2_STR-T2125 sy-vline
WA_PRU_RSV1_S2_STR-T2126 sy-vline
WA_PRU_RSV1_S2_STR-T2133 sy-vline
WA_PRU_RSV1_S2_STR-T2134 sy-vline
WA_PRU_RSV1_S2_STR-T2135 sy-vline
WA_PRU_RSV1_S2_STR-T2136 sy-vline
WA_PRU_RSV1_S2_STR-T2213 sy-vline
WA_PRU_RSV1_S2_STR-T2214 sy-vline
WA_PRU_RSV1_S2_STR-T2215 sy-vline
WA_PRU_RSV1_S2_STR-T2216 sy-vline
WA_PRU_RSV1_S2_STR-T2223 sy-vline
WA_PRU_RSV1_S2_STR-T2224 sy-vline
WA_PRU_RSV1_S2_STR-T2225 sy-vline
WA_PRU_RSV1_S2_STR-T2226 sy-vline
WA_PRU_RSV1_S2_STR-T2233 sy-vline
WA_PRU_RSV1_S2_STR-T2234 sy-vline
WA_PRU_RSV1_S2_STR-T2235 sy-vline
WA_PRU_RSV1_S2_STR-T2236 sy-vline
WA_PRU_RSV1_S2_STR-T2313 sy-vline
WA_PRU_RSV1_S2_STR-T2314 sy-vline
WA_PRU_RSV1_S2_STR-T2315 sy-vline
WA_PRU_RSV1_S2_STR-T2316 sy-vline
WA_PRU_RSV1_S2_STR-T2323 sy-vline
WA_PRU_RSV1_S2_STR-T2324 sy-vline
WA_PRU_RSV1_S2_STR-T2325 sy-vline
WA_PRU_RSV1_S2_STR-T2326 sy-vline
WA_PRU_RSV1_S2_STR-T2333 sy-vline
WA_PRU_RSV1_S2_STR-T2334 sy-vline
WA_PRU_RSV1_S2_STR-T2335 sy-vline
WA_PRU_RSV1_S2_STR-T2336 sy-vline
WA_PRU_RSV1_S2_STR-T2403 sy-vline
WA_PRU_RSV1_S2_STR-T2404 sy-vline
WA_PRU_RSV1_S2_STR-T2405 sy-vline
WA_PRU_RSV1_S2_STR-T2406 sy-vline
WA_PRU_RSV1_S2_STR-T2413 sy-vline
WA_PRU_RSV1_S2_STR-T2414 sy-vline
WA_PRU_RSV1_S2_STR-T2415 sy-vline
WA_PRU_RSV1_S2_STR-T2416 sy-vline
WA_PRU_RSV1_S2_STR-T2503 sy-vline
WA_PRU_RSV1_S2_STR-T2504 sy-vline
WA_PRU_RSV1_S2_STR-T2505 sy-vline
WA_PRU_RSV1_S2_STR-T2506 sy-vline
WA_PRU_RSV1_S2_STR-T2513 sy-vline
WA_PRU_RSV1_S2_STR-T2514 sy-vline
WA_PRU_RSV1_S2_STR-T2515 sy-vline
WA_PRU_RSV1_S2_STR-T2516 sy-vline
WA_PRU_RSV1_S2_STR-T2523 sy-vline
WA_PRU_RSV1_S2_STR-T2524 sy-vline
WA_PRU_RSV1_S2_STR-T2525 sy-vline
WA_PRU_RSV1_S2_STR-T2526 sy-vline
WA_PRU_RSV1_S2_STR-T2603 sy-vline
WA_PRU_RSV1_S2_STR-T2604 sy-vline
WA_PRU_RSV1_S2_STR-T2605 sy-vline
WA_PRU_RSV1_S2_STR-T2606 sy-vline
WA_PRU_RSV1_S2_STR-T2613 sy-vline
WA_PRU_RSV1_S2_STR-T2614 sy-vline
WA_PRU_RSV1_S2_STR-T2615 sy-vline
WA_PRU_RSV1_S2_STR-T2616 sy-vline
WA_PRU_RSV1_S2_STR-T2713 sy-vline
WA_PRU_RSV1_S2_STR-T2714 sy-vline
WA_PRU_RSV1_S2_STR-T2715 sy-vline
WA_PRU_RSV1_S2_STR-T2716 sy-vline
WA_PRU_RSV1_S2_STR-T2723 sy-vline
WA_PRU_RSV1_S2_STR-T2724 sy-vline
WA_PRU_RSV1_S2_STR-T2725 sy-vline
WA_PRU_RSV1_S2_STR-T2726 sy-vline
WA_PRU_RSV1_S2_STR-T2733 sy-vline
WA_PRU_RSV1_S2_STR-T2734 sy-vline
WA_PRU_RSV1_S2_STR-T2735 sy-vline
WA_PRU_RSV1_S2_STR-T2736 sy-vline
WA_PRU_RSV1_S2_STR-T2743 sy-vline
WA_PRU_RSV1_S2_STR-T2744 sy-vline
WA_PRU_RSV1_S2_STR-T2745 sy-vline
WA_PRU_RSV1_S2_STR-T2746 sy-vline
WA_PRU_RSV1_S2_STR-T2753 sy-vline
WA_PRU_RSV1_S2_STR-T2754 sy-vline
WA_PRU_RSV1_S2_STR-T2755 sy-vline
WA_PRU_RSV1_S2_STR-T2756 sy-vline
WA_PRU_RSV1_S2_STR-T2763 sy-vline
WA_PRU_RSV1_S2_STR-T2764 sy-vline
WA_PRU_RSV1_S2_STR-T2765 sy-vline
WA_PRU_RSV1_S2_STR-T2766 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.