ABAP Select data from SAP table REMOB_BROKER_COND_OR 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 REMOB_BROKER_COND_OR 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 REMOB_BROKER_COND_OR. 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 REMOB_BROKER_COND_OR 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_REMOB_BROKER_COND_OR TYPE STANDARD TABLE OF REMOB_BROKER_COND_OR,
      WA_REMOB_BROKER_COND_OR TYPE REMOB_BROKER_COND_OR,
      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: <REMOB_BROKER_COND_OR> TYPE REMOB_BROKER_COND_OR.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM REMOB_BROKER_COND_OR
*  INTO TABLE @DATA(IT_REMOB_BROKER_COND_OR2).
*--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_REMOB_BROKER_COND_OR INDEX 1 INTO DATA(WA_REMOB_BROKER_COND_OR2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_REMOB_BROKER_COND_OR ASSIGNING <REMOB_BROKER_COND_OR>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<REMOB_BROKER_COND_OR>-MANDT = 1.
<REMOB_BROKER_COND_OR>-RRTYPE = 1.
<REMOB_BROKER_COND_OR>-ACQUISTYPE = 1.
<REMOB_BROKER_COND_OR>-CDGROUP01 = 1.
<REMOB_BROKER_COND_OR>-CDTYPE01 = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_REMOB_BROKER_COND_OR-CDCURR01, sy-vline,
WA_REMOB_BROKER_COND_OR-CDPURPOSE01, sy-vline,
WA_REMOB_BROKER_COND_OR-CDBASE01, sy-vline,
WA_REMOB_BROKER_COND_OR-CDCALCMETH01, sy-vline,
WA_REMOB_BROKER_COND_OR-CDCALCMEAS01, sy-vline,
WA_REMOB_BROKER_COND_OR-CDTOLHIGH01, sy-vline.
ENDLOOP. *Add any further fields from structure WA_REMOB_BROKER_COND_OR 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_REMOB_BROKER_COND_OR 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_REMOB_BROKER_COND_OR INTO WA_REMOB_BROKER_COND_OR. *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 CDGROUP01 CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_REMOB_BROKER_COND_OR-CDGROUP01 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_REMOB_BROKER_COND_OR-CDGROUP01.
WRITE:/ 'New Value:', ld_input.

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

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

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

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

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

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

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

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

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

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

*Conversion exit ALPHA, internal->external for field CDCALCMEAS04 CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING input = WA_REMOB_BROKER_COND_OR-CDCALCMEAS04 IMPORTING output = ld_input.
WRITE:/ 'Org Value:', WA_REMOB_BROKER_COND_OR-CDCALCMEAS04.
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_REMOB_BROKER_COND_OR_STR,
MANDT TYPE STRING,
RRTYPE TYPE STRING,
ACQUISTYPE TYPE STRING,
CDGROUP01 TYPE STRING,
CDTYPE01 TYPE STRING,
CDCURR01 TYPE STRING,
CDPURPOSE01 TYPE STRING,
CDBASE01 TYPE STRING,
CDCALCMETH01 TYPE STRING,
CDCALCMEAS01 TYPE STRING,
CDTOLHIGH01 TYPE STRING,
CDAPPARENT01 TYPE STRING,
CDLINKNEXT01 TYPE STRING,
CDUSECONTRACT01 TYPE STRING,
CDPRICEBASE01 TYPE STRING,
CDGROUP02 TYPE STRING,
CDTYPE02 TYPE STRING,
CDCURR02 TYPE STRING,
CDPURPOSE02 TYPE STRING,
CDBASE02 TYPE STRING,
CDCALCMETH02 TYPE STRING,
CDCALCMEAS02 TYPE STRING,
CDTOLHIGH02 TYPE STRING,
CDAPPARENT02 TYPE STRING,
CDLINKNEXT02 TYPE STRING,
CDUSECONTRACT02 TYPE STRING,
CDPRICEBASE02 TYPE STRING,
CDGROUP03 TYPE STRING,
CDTYPE03 TYPE STRING,
CDCURR03 TYPE STRING,
CDPURPOSE03 TYPE STRING,
CDBASE03 TYPE STRING,
CDCALCMETH03 TYPE STRING,
CDCALCMEAS03 TYPE STRING,
CDTOLHIGH03 TYPE STRING,
CDAPPARENT03 TYPE STRING,
CDLINKNEXT03 TYPE STRING,
CDUSECONTRACT03 TYPE STRING,
CDPRICEBASE03 TYPE STRING,
CDGROUP04 TYPE STRING,
CDTYPE04 TYPE STRING,
CDCURR04 TYPE STRING,
CDPURPOSE04 TYPE STRING,
CDBASE04 TYPE STRING,
CDCALCMETH04 TYPE STRING,
CDCALCMEAS04 TYPE STRING,
CDTOLHIGH04 TYPE STRING,
CDAPPARENT04 TYPE STRING,
CDLINKNEXT04 TYPE STRING,
CDUSECONTRACT04 TYPE STRING,
CDPRICEBASE04 TYPE STRING,
XMCONDGROUP01 TYPE STRING,
XCDCALCRULE01 TYPE STRING,
XMCONDGROUP02 TYPE STRING,
XCDCALCRULE02 TYPE STRING,
XMCONDGROUP03 TYPE STRING,
XCDCALCRULE03 TYPE STRING,
XMCONDGROUP04 TYPE STRING,
XCDCALCRULE04 TYPE STRING,END OF T_EKKO_STR. DATA: WA_REMOB_BROKER_COND_OR_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_REMOB_BROKER_COND_OR_STR-MANDT sy-vline
WA_REMOB_BROKER_COND_OR_STR-RRTYPE sy-vline
WA_REMOB_BROKER_COND_OR_STR-ACQUISTYPE sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDGROUP01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTYPE01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCURR01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPURPOSE01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDBASE01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMETH01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMEAS01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTOLHIGH01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDAPPARENT01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDLINKNEXT01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDUSECONTRACT01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPRICEBASE01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDGROUP02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTYPE02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCURR02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPURPOSE02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDBASE02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMETH02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMEAS02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTOLHIGH02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDAPPARENT02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDLINKNEXT02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDUSECONTRACT02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPRICEBASE02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDGROUP03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTYPE03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCURR03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPURPOSE03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDBASE03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMETH03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMEAS03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTOLHIGH03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDAPPARENT03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDLINKNEXT03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDUSECONTRACT03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPRICEBASE03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDGROUP04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTYPE04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCURR04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPURPOSE04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDBASE04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMETH04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDCALCMEAS04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDTOLHIGH04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDAPPARENT04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDLINKNEXT04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDUSECONTRACT04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-CDPRICEBASE04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XMCONDGROUP01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XCDCALCRULE01 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XMCONDGROUP02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XCDCALCRULE02 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XMCONDGROUP03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XCDCALCRULE03 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XMCONDGROUP04 sy-vline
WA_REMOB_BROKER_COND_OR_STR-XCDCALCRULE04 sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.