ABAP Select data from SAP table PRO_SFO_STX 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 PRO_SFO_STX 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 PRO_SFO_STX. 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 PRO_SFO_STX 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_PRO_SFO_STX TYPE STANDARD TABLE OF PRO_SFO_STX,
      WA_PRO_SFO_STX TYPE PRO_SFO_STX,
      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: <PRO_SFO_STX> TYPE PRO_SFO_STX.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM PRO_SFO_STX
*  INTO TABLE @DATA(IT_PRO_SFO_STX2).
*--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_PRO_SFO_STX INDEX 1 INTO DATA(WA_PRO_SFO_STX2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_PRO_SFO_STX ASSIGNING <PRO_SFO_STX>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<PRO_SFO_STX>-PAR01 = 1.
<PRO_SFO_STX>-PAR02 = 1.
<PRO_SFO_STX>-PAR03 = 1.
<PRO_SFO_STX>-PAR04 = 1.
<PRO_SFO_STX>-PAR05 = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_PRO_SFO_STX-PAR06, sy-vline,
WA_PRO_SFO_STX-PAR07, sy-vline,
WA_PRO_SFO_STX-PAR08, sy-vline,
WA_PRO_SFO_STX-PAR09, sy-vline,
WA_PRO_SFO_STX-PAR10, sy-vline,
WA_PRO_SFO_STX-PAR11, sy-vline.
ENDLOOP. *Add any further fields from structure WA_PRO_SFO_STX 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_PRO_SFO_STX 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_PRO_SFO_STX INTO WA_PRO_SFO_STX. *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_PRO_SFO_STX_STR,
PAR01 TYPE STRING,
PAR02 TYPE STRING,
PAR03 TYPE STRING,
PAR04 TYPE STRING,
PAR05 TYPE STRING,
PAR06 TYPE STRING,
PAR07 TYPE STRING,
PAR08 TYPE STRING,
PAR09 TYPE STRING,
PAR10 TYPE STRING,
PAR11 TYPE STRING,
PAR12 TYPE STRING,
PAR13 TYPE STRING,
PAR14 TYPE STRING,
PAR15 TYPE STRING,
PAR16 TYPE STRING,
PAR17 TYPE STRING,
PAR18 TYPE STRING,
PAR19 TYPE STRING,
PAR20 TYPE STRING,
STX01 TYPE STRING,
STX02 TYPE STRING,
STX03 TYPE STRING,
STX04 TYPE STRING,
STX05 TYPE STRING,
STX06 TYPE STRING,
STX07 TYPE STRING,
STX08 TYPE STRING,
STX09 TYPE STRING,
STX10 TYPE STRING,
STX11 TYPE STRING,
STX12 TYPE STRING,
STX13 TYPE STRING,
STX14 TYPE STRING,
STX15 TYPE STRING,
STX16 TYPE STRING,
STX17 TYPE STRING,
STX18 TYPE STRING,
STX19 TYPE STRING,
STX20 TYPE STRING,
STX21 TYPE STRING,
STX22 TYPE STRING,
STX23 TYPE STRING,
STX24 TYPE STRING,
STX25 TYPE STRING,
STX26 TYPE STRING,
STX27 TYPE STRING,
STX28 TYPE STRING,
STX29 TYPE STRING,
STX30 TYPE STRING,
STX31 TYPE STRING,
STX32 TYPE STRING,
STX33 TYPE STRING,
STX34 TYPE STRING,
STX35 TYPE STRING,
STX36 TYPE STRING,
STX37 TYPE STRING,
STX38 TYPE STRING,
STX39 TYPE STRING,
STX40 TYPE STRING,
STX41 TYPE STRING,
STX42 TYPE STRING,
STX43 TYPE STRING,
STX44 TYPE STRING,
STX45 TYPE STRING,
STX46 TYPE STRING,
STX47 TYPE STRING,
STX48 TYPE STRING,
STX49 TYPE STRING,
STX50 TYPE STRING,
STX51 TYPE STRING,
STX52 TYPE STRING,
STX53 TYPE STRING,
STX54 TYPE STRING,
STX55 TYPE STRING,
STX56 TYPE STRING,
STX57 TYPE STRING,
STX58 TYPE STRING,
STX59 TYPE STRING,
STX60 TYPE STRING,
STX61 TYPE STRING,
STX62 TYPE STRING,
STX63 TYPE STRING,
STX64 TYPE STRING,
STX65 TYPE STRING,
STX66 TYPE STRING,
STX67 TYPE STRING,
STX68 TYPE STRING,
STX69 TYPE STRING,
STX70 TYPE STRING,
STX71 TYPE STRING,
STX72 TYPE STRING,
STX73 TYPE STRING,
STX74 TYPE STRING,
STX75 TYPE STRING,
STX76 TYPE STRING,
STX77 TYPE STRING,
STX78 TYPE STRING,
STX79 TYPE STRING,
STX80 TYPE STRING,
STX81 TYPE STRING,
STX82 TYPE STRING,
STX83 TYPE STRING,
STX84 TYPE STRING,
STX85 TYPE STRING,
STX86 TYPE STRING,
STX87 TYPE STRING,
STX88 TYPE STRING,
STX89 TYPE STRING,
STX90 TYPE STRING,
STX91 TYPE STRING,
STX92 TYPE STRING,
STX93 TYPE STRING,
STX94 TYPE STRING,
STX95 TYPE STRING,
STX96 TYPE STRING,
STX97 TYPE STRING,
STX98 TYPE STRING,
STX99 TYPE STRING,END OF T_EKKO_STR. DATA: WA_PRO_SFO_STX_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_PRO_SFO_STX_STR-PAR01 sy-vline
WA_PRO_SFO_STX_STR-PAR02 sy-vline
WA_PRO_SFO_STX_STR-PAR03 sy-vline
WA_PRO_SFO_STX_STR-PAR04 sy-vline
WA_PRO_SFO_STX_STR-PAR05 sy-vline
WA_PRO_SFO_STX_STR-PAR06 sy-vline
WA_PRO_SFO_STX_STR-PAR07 sy-vline
WA_PRO_SFO_STX_STR-PAR08 sy-vline
WA_PRO_SFO_STX_STR-PAR09 sy-vline
WA_PRO_SFO_STX_STR-PAR10 sy-vline
WA_PRO_SFO_STX_STR-PAR11 sy-vline
WA_PRO_SFO_STX_STR-PAR12 sy-vline
WA_PRO_SFO_STX_STR-PAR13 sy-vline
WA_PRO_SFO_STX_STR-PAR14 sy-vline
WA_PRO_SFO_STX_STR-PAR15 sy-vline
WA_PRO_SFO_STX_STR-PAR16 sy-vline
WA_PRO_SFO_STX_STR-PAR17 sy-vline
WA_PRO_SFO_STX_STR-PAR18 sy-vline
WA_PRO_SFO_STX_STR-PAR19 sy-vline
WA_PRO_SFO_STX_STR-PAR20 sy-vline
WA_PRO_SFO_STX_STR-STX01 sy-vline
WA_PRO_SFO_STX_STR-STX02 sy-vline
WA_PRO_SFO_STX_STR-STX03 sy-vline
WA_PRO_SFO_STX_STR-STX04 sy-vline
WA_PRO_SFO_STX_STR-STX05 sy-vline
WA_PRO_SFO_STX_STR-STX06 sy-vline
WA_PRO_SFO_STX_STR-STX07 sy-vline
WA_PRO_SFO_STX_STR-STX08 sy-vline
WA_PRO_SFO_STX_STR-STX09 sy-vline
WA_PRO_SFO_STX_STR-STX10 sy-vline
WA_PRO_SFO_STX_STR-STX11 sy-vline
WA_PRO_SFO_STX_STR-STX12 sy-vline
WA_PRO_SFO_STX_STR-STX13 sy-vline
WA_PRO_SFO_STX_STR-STX14 sy-vline
WA_PRO_SFO_STX_STR-STX15 sy-vline
WA_PRO_SFO_STX_STR-STX16 sy-vline
WA_PRO_SFO_STX_STR-STX17 sy-vline
WA_PRO_SFO_STX_STR-STX18 sy-vline
WA_PRO_SFO_STX_STR-STX19 sy-vline
WA_PRO_SFO_STX_STR-STX20 sy-vline
WA_PRO_SFO_STX_STR-STX21 sy-vline
WA_PRO_SFO_STX_STR-STX22 sy-vline
WA_PRO_SFO_STX_STR-STX23 sy-vline
WA_PRO_SFO_STX_STR-STX24 sy-vline
WA_PRO_SFO_STX_STR-STX25 sy-vline
WA_PRO_SFO_STX_STR-STX26 sy-vline
WA_PRO_SFO_STX_STR-STX27 sy-vline
WA_PRO_SFO_STX_STR-STX28 sy-vline
WA_PRO_SFO_STX_STR-STX29 sy-vline
WA_PRO_SFO_STX_STR-STX30 sy-vline
WA_PRO_SFO_STX_STR-STX31 sy-vline
WA_PRO_SFO_STX_STR-STX32 sy-vline
WA_PRO_SFO_STX_STR-STX33 sy-vline
WA_PRO_SFO_STX_STR-STX34 sy-vline
WA_PRO_SFO_STX_STR-STX35 sy-vline
WA_PRO_SFO_STX_STR-STX36 sy-vline
WA_PRO_SFO_STX_STR-STX37 sy-vline
WA_PRO_SFO_STX_STR-STX38 sy-vline
WA_PRO_SFO_STX_STR-STX39 sy-vline
WA_PRO_SFO_STX_STR-STX40 sy-vline
WA_PRO_SFO_STX_STR-STX41 sy-vline
WA_PRO_SFO_STX_STR-STX42 sy-vline
WA_PRO_SFO_STX_STR-STX43 sy-vline
WA_PRO_SFO_STX_STR-STX44 sy-vline
WA_PRO_SFO_STX_STR-STX45 sy-vline
WA_PRO_SFO_STX_STR-STX46 sy-vline
WA_PRO_SFO_STX_STR-STX47 sy-vline
WA_PRO_SFO_STX_STR-STX48 sy-vline
WA_PRO_SFO_STX_STR-STX49 sy-vline
WA_PRO_SFO_STX_STR-STX50 sy-vline
WA_PRO_SFO_STX_STR-STX51 sy-vline
WA_PRO_SFO_STX_STR-STX52 sy-vline
WA_PRO_SFO_STX_STR-STX53 sy-vline
WA_PRO_SFO_STX_STR-STX54 sy-vline
WA_PRO_SFO_STX_STR-STX55 sy-vline
WA_PRO_SFO_STX_STR-STX56 sy-vline
WA_PRO_SFO_STX_STR-STX57 sy-vline
WA_PRO_SFO_STX_STR-STX58 sy-vline
WA_PRO_SFO_STX_STR-STX59 sy-vline
WA_PRO_SFO_STX_STR-STX60 sy-vline
WA_PRO_SFO_STX_STR-STX61 sy-vline
WA_PRO_SFO_STX_STR-STX62 sy-vline
WA_PRO_SFO_STX_STR-STX63 sy-vline
WA_PRO_SFO_STX_STR-STX64 sy-vline
WA_PRO_SFO_STX_STR-STX65 sy-vline
WA_PRO_SFO_STX_STR-STX66 sy-vline
WA_PRO_SFO_STX_STR-STX67 sy-vline
WA_PRO_SFO_STX_STR-STX68 sy-vline
WA_PRO_SFO_STX_STR-STX69 sy-vline
WA_PRO_SFO_STX_STR-STX70 sy-vline
WA_PRO_SFO_STX_STR-STX71 sy-vline
WA_PRO_SFO_STX_STR-STX72 sy-vline
WA_PRO_SFO_STX_STR-STX73 sy-vline
WA_PRO_SFO_STX_STR-STX74 sy-vline
WA_PRO_SFO_STX_STR-STX75 sy-vline
WA_PRO_SFO_STX_STR-STX76 sy-vline
WA_PRO_SFO_STX_STR-STX77 sy-vline
WA_PRO_SFO_STX_STR-STX78 sy-vline
WA_PRO_SFO_STX_STR-STX79 sy-vline
WA_PRO_SFO_STX_STR-STX80 sy-vline
WA_PRO_SFO_STX_STR-STX81 sy-vline
WA_PRO_SFO_STX_STR-STX82 sy-vline
WA_PRO_SFO_STX_STR-STX83 sy-vline
WA_PRO_SFO_STX_STR-STX84 sy-vline
WA_PRO_SFO_STX_STR-STX85 sy-vline
WA_PRO_SFO_STX_STR-STX86 sy-vline
WA_PRO_SFO_STX_STR-STX87 sy-vline
WA_PRO_SFO_STX_STR-STX88 sy-vline
WA_PRO_SFO_STX_STR-STX89 sy-vline
WA_PRO_SFO_STX_STR-STX90 sy-vline
WA_PRO_SFO_STX_STR-STX91 sy-vline
WA_PRO_SFO_STX_STR-STX92 sy-vline
WA_PRO_SFO_STX_STR-STX93 sy-vline
WA_PRO_SFO_STX_STR-STX94 sy-vline
WA_PRO_SFO_STX_STR-STX95 sy-vline
WA_PRO_SFO_STX_STR-STX96 sy-vline
WA_PRO_SFO_STX_STR-STX97 sy-vline
WA_PRO_SFO_STX_STR-STX98 sy-vline
WA_PRO_SFO_STX_STR-STX99 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.