ABAP Select data from SAP table REBDARNODE 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 REBDARNODE 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 REBDARNODE. 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 REBDARNODE 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_REBDARNODE TYPE STANDARD TABLE OF REBDARNODE,
      WA_REBDARNODE TYPE REBDARNODE,
      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: <REBDARNODE> TYPE REBDARNODE.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM REBDARNODE
*  INTO TABLE @DATA(IT_REBDARNODE2).
*--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_REBDARNODE INDEX 1 INTO DATA(WA_REBDARNODE2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_REBDARNODE ASSIGNING <REBDARNODE>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<REBDARNODE>-AOID = 1.
<REBDARNODE>-XAO = 1.
<REBDARNODE>-AOTYPE01 = 1.
<REBDARNODE>-XMAOTYPE01 = 1.
<REBDARNODE>-AONR01 = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_REBDARNODE-XAO01, sy-vline,
WA_REBDARNODE-AOTYPE02, sy-vline,
WA_REBDARNODE-XMAOTYPE02, sy-vline,
WA_REBDARNODE-AONR02, sy-vline,
WA_REBDARNODE-XAO02, sy-vline,
WA_REBDARNODE-AOTYPE03, sy-vline.
ENDLOOP. *Add any further fields from structure WA_REBDARNODE 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_REBDARNODE 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_REBDARNODE INTO WA_REBDARNODE. *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_REBDARNODE_STR,
AOID TYPE STRING,
XAO TYPE STRING,
AOTYPE01 TYPE STRING,
XMAOTYPE01 TYPE STRING,
AONR01 TYPE STRING,
XAO01 TYPE STRING,
AOTYPE02 TYPE STRING,
XMAOTYPE02 TYPE STRING,
AONR02 TYPE STRING,
XAO02 TYPE STRING,
AOTYPE03 TYPE STRING,
XMAOTYPE03 TYPE STRING,
AONR03 TYPE STRING,
XAO03 TYPE STRING,
AOTYPE04 TYPE STRING,
XMAOTYPE04 TYPE STRING,
AONR04 TYPE STRING,
XAO04 TYPE STRING,
AOTYPE05 TYPE STRING,
XMAOTYPE05 TYPE STRING,
AONR05 TYPE STRING,
XAO05 TYPE STRING,
AOTYPE06 TYPE STRING,
XMAOTYPE06 TYPE STRING,
AONR06 TYPE STRING,
XAO06 TYPE STRING,
AOTYPE07 TYPE STRING,
XMAOTYPE07 TYPE STRING,
AONR07 TYPE STRING,
XAO07 TYPE STRING,
AOTYPE08 TYPE STRING,
XMAOTYPE08 TYPE STRING,
AONR08 TYPE STRING,
XAO08 TYPE STRING,
AOTYPE09 TYPE STRING,
XMAOTYPE09 TYPE STRING,
AONR09 TYPE STRING,
XAO09 TYPE STRING,
AOTYPE10 TYPE STRING,
XMAOTYPE10 TYPE STRING,
AONR10 TYPE STRING,
XAO10 TYPE STRING,
AOTYPE11 TYPE STRING,
XMAOTYPE11 TYPE STRING,
AONR11 TYPE STRING,
XAO11 TYPE STRING,
AOTYPE12 TYPE STRING,
XMAOTYPE12 TYPE STRING,
AONR12 TYPE STRING,
XAO12 TYPE STRING,
AOTYPE13 TYPE STRING,
XMAOTYPE13 TYPE STRING,
AONR13 TYPE STRING,
XAO13 TYPE STRING,
AOTYPE14 TYPE STRING,
XMAOTYPE14 TYPE STRING,
AONR14 TYPE STRING,
XAO14 TYPE STRING,
AOTYPE15 TYPE STRING,
XMAOTYPE15 TYPE STRING,
AONR15 TYPE STRING,
XAO15 TYPE STRING,
AOTYPE16 TYPE STRING,
XMAOTYPE16 TYPE STRING,
AONR16 TYPE STRING,
XAO16 TYPE STRING,
AOTYPE17 TYPE STRING,
XMAOTYPE17 TYPE STRING,
AONR17 TYPE STRING,
XAO17 TYPE STRING,
AOTYPE18 TYPE STRING,
XMAOTYPE18 TYPE STRING,
AONR18 TYPE STRING,
XAO18 TYPE STRING,
AOTYPE19 TYPE STRING,
XMAOTYPE19 TYPE STRING,
AONR19 TYPE STRING,
XAO19 TYPE STRING,
AOTYPE20 TYPE STRING,
XMAOTYPE20 TYPE STRING,
AONR20 TYPE STRING,
XAO20 TYPE STRING,END OF T_EKKO_STR. DATA: WA_REBDARNODE_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_REBDARNODE_STR-AOID sy-vline
WA_REBDARNODE_STR-XAO sy-vline
WA_REBDARNODE_STR-AOTYPE01 sy-vline
WA_REBDARNODE_STR-XMAOTYPE01 sy-vline
WA_REBDARNODE_STR-AONR01 sy-vline
WA_REBDARNODE_STR-XAO01 sy-vline
WA_REBDARNODE_STR-AOTYPE02 sy-vline
WA_REBDARNODE_STR-XMAOTYPE02 sy-vline
WA_REBDARNODE_STR-AONR02 sy-vline
WA_REBDARNODE_STR-XAO02 sy-vline
WA_REBDARNODE_STR-AOTYPE03 sy-vline
WA_REBDARNODE_STR-XMAOTYPE03 sy-vline
WA_REBDARNODE_STR-AONR03 sy-vline
WA_REBDARNODE_STR-XAO03 sy-vline
WA_REBDARNODE_STR-AOTYPE04 sy-vline
WA_REBDARNODE_STR-XMAOTYPE04 sy-vline
WA_REBDARNODE_STR-AONR04 sy-vline
WA_REBDARNODE_STR-XAO04 sy-vline
WA_REBDARNODE_STR-AOTYPE05 sy-vline
WA_REBDARNODE_STR-XMAOTYPE05 sy-vline
WA_REBDARNODE_STR-AONR05 sy-vline
WA_REBDARNODE_STR-XAO05 sy-vline
WA_REBDARNODE_STR-AOTYPE06 sy-vline
WA_REBDARNODE_STR-XMAOTYPE06 sy-vline
WA_REBDARNODE_STR-AONR06 sy-vline
WA_REBDARNODE_STR-XAO06 sy-vline
WA_REBDARNODE_STR-AOTYPE07 sy-vline
WA_REBDARNODE_STR-XMAOTYPE07 sy-vline
WA_REBDARNODE_STR-AONR07 sy-vline
WA_REBDARNODE_STR-XAO07 sy-vline
WA_REBDARNODE_STR-AOTYPE08 sy-vline
WA_REBDARNODE_STR-XMAOTYPE08 sy-vline
WA_REBDARNODE_STR-AONR08 sy-vline
WA_REBDARNODE_STR-XAO08 sy-vline
WA_REBDARNODE_STR-AOTYPE09 sy-vline
WA_REBDARNODE_STR-XMAOTYPE09 sy-vline
WA_REBDARNODE_STR-AONR09 sy-vline
WA_REBDARNODE_STR-XAO09 sy-vline
WA_REBDARNODE_STR-AOTYPE10 sy-vline
WA_REBDARNODE_STR-XMAOTYPE10 sy-vline
WA_REBDARNODE_STR-AONR10 sy-vline
WA_REBDARNODE_STR-XAO10 sy-vline
WA_REBDARNODE_STR-AOTYPE11 sy-vline
WA_REBDARNODE_STR-XMAOTYPE11 sy-vline
WA_REBDARNODE_STR-AONR11 sy-vline
WA_REBDARNODE_STR-XAO11 sy-vline
WA_REBDARNODE_STR-AOTYPE12 sy-vline
WA_REBDARNODE_STR-XMAOTYPE12 sy-vline
WA_REBDARNODE_STR-AONR12 sy-vline
WA_REBDARNODE_STR-XAO12 sy-vline
WA_REBDARNODE_STR-AOTYPE13 sy-vline
WA_REBDARNODE_STR-XMAOTYPE13 sy-vline
WA_REBDARNODE_STR-AONR13 sy-vline
WA_REBDARNODE_STR-XAO13 sy-vline
WA_REBDARNODE_STR-AOTYPE14 sy-vline
WA_REBDARNODE_STR-XMAOTYPE14 sy-vline
WA_REBDARNODE_STR-AONR14 sy-vline
WA_REBDARNODE_STR-XAO14 sy-vline
WA_REBDARNODE_STR-AOTYPE15 sy-vline
WA_REBDARNODE_STR-XMAOTYPE15 sy-vline
WA_REBDARNODE_STR-AONR15 sy-vline
WA_REBDARNODE_STR-XAO15 sy-vline
WA_REBDARNODE_STR-AOTYPE16 sy-vline
WA_REBDARNODE_STR-XMAOTYPE16 sy-vline
WA_REBDARNODE_STR-AONR16 sy-vline
WA_REBDARNODE_STR-XAO16 sy-vline
WA_REBDARNODE_STR-AOTYPE17 sy-vline
WA_REBDARNODE_STR-XMAOTYPE17 sy-vline
WA_REBDARNODE_STR-AONR17 sy-vline
WA_REBDARNODE_STR-XAO17 sy-vline
WA_REBDARNODE_STR-AOTYPE18 sy-vline
WA_REBDARNODE_STR-XMAOTYPE18 sy-vline
WA_REBDARNODE_STR-AONR18 sy-vline
WA_REBDARNODE_STR-XAO18 sy-vline
WA_REBDARNODE_STR-AOTYPE19 sy-vline
WA_REBDARNODE_STR-XMAOTYPE19 sy-vline
WA_REBDARNODE_STR-AONR19 sy-vline
WA_REBDARNODE_STR-XAO19 sy-vline
WA_REBDARNODE_STR-AOTYPE20 sy-vline
WA_REBDARNODE_STR-XMAOTYPE20 sy-vline
WA_REBDARNODE_STR-AONR20 sy-vline
WA_REBDARNODE_STR-XAO20 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.