ABAP Select data from SAP table SDB_OMS_OBJECT_BROWSER 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 SDB_OMS_OBJECT_BROWSER 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 SDB_OMS_OBJECT_BROWSER. 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 SDB_OMS_OBJECT_BROWSER 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_SDB_OMS_OBJECT_BROWSER TYPE STANDARD TABLE OF SDB_OMS_OBJECT_BROWSER,
      WA_SDB_OMS_OBJECT_BROWSER TYPE SDB_OMS_OBJECT_BROWSER,
      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: <SDB_OMS_OBJECT_BROWSER> TYPE SDB_OMS_OBJECT_BROWSER.

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

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

*Select data and declare internal table using in-line method @DATA
*SELECT *
*  FROM SDB_OMS_OBJECT_BROWSER
*  INTO TABLE @DATA(IT_SDB_OMS_OBJECT_BROWSER2).
*--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_SDB_OMS_OBJECT_BROWSER INDEX 1 INTO DATA(WA_SDB_OMS_OBJECT_BROWSER2).


*Demonstrate how to loop at an internal table and update values using a FIELD-SYMBOL
LOOP AT IT_SDB_OMS_OBJECT_BROWSER ASSIGNING <SDB_OMS_OBJECT_BROWSER>.
*To update a field value using a field symbol simply change the value via the field symbol pointer
<SDB_OMS_OBJECT_BROWSER>-CURRENT_INPUT_TYPE = 1.
<SDB_OMS_OBJECT_BROWSER>-CURRENT_ACCESS_TYPE = 1.
<SDB_OMS_OBJECT_BROWSER>-IN_OID = 1.
<SDB_OMS_OBJECT_BROWSER>-TENANT = 1.
<SDB_OMS_OBJECT_BROWSER>-CURRENT_OID = 1.
ENDLOOP.

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

*Write selected data to screen/report before conversion.
  WRITE:/ sy-vline,   WA_SDB_OMS_OBJECT_BROWSER-CURRENT_REVISIONNO, sy-vline,
WA_SDB_OMS_OBJECT_BROWSER-HEX_REVISIONNO, sy-vline,
WA_SDB_OMS_OBJECT_BROWSER-REFRESH_DATE, sy-vline,
WA_SDB_OMS_OBJECT_BROWSER-REFRESH_TIME, sy-vline,
WA_SDB_OMS_OBJECT_BROWSER-OBJECTINFO, sy-vline,
WA_SDB_OMS_OBJECT_BROWSER-OID, sy-vline.
ENDLOOP. *Add any further fields from structure WA_SDB_OMS_OBJECT_BROWSER 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_SDB_OMS_OBJECT_BROWSER 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_SDB_OMS_OBJECT_BROWSER INTO WA_SDB_OMS_OBJECT_BROWSER. *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_SDB_OMS_OBJECT_BROWSER_STR,
CURRENT_INPUT_TYPE TYPE STRING,
CURRENT_ACCESS_TYPE TYPE STRING,
IN_OID TYPE STRING,
TENANT TYPE STRING,
CURRENT_OID TYPE STRING,
CURRENT_REVISIONNO TYPE STRING,
HEX_REVISIONNO TYPE STRING,
REFRESH_DATE TYPE STRING,
REFRESH_TIME TYPE STRING,
OBJECTINFO TYPE STRING,
OID TYPE STRING,
VALUE TYPE STRING,
CLASSID TYPE STRING,
CLASSNAME TYPE STRING,
SCHEMAHANDLE TYPE STRING,
SCHEMANAME TYPE STRING,
CONTAINERNO TYPE STRING,
TYPE TYPE STRING,
DISCLOSED TYPE STRING,
CLASSSIZE TYPE STRING,
KEYINFO TYPE STRING,
KEYNAME TYPE STRING,
KEYSIZE TYPE STRING,
SCALE_CLASSSIZE TYPE STRING,
SCALE_KEYSIZE TYPE STRING,
MEMBER TYPE STRING,
MEMBER_INDEX TYPE STRING,
NAVIGATION_TABLE TYPE STRING,
MEMBERS TYPE STRING,
INDEXES TYPE STRING,
KEY TYPE STRING,
VALUE TYPE STRING,
VALUE_INDEX TYPE STRING,
HEX_OBJECT TYPE STRING,
HEX_KEY TYPE STRING,
VALUE_STRING TYPE STRING,
VALUE_INDEX_STRING TYPE STRING,
HEX_OBJECT_STRING TYPE STRING,
HEX_KEY_STRING TYPE STRING,
TEXT_NOT_DISCLOSED TYPE STRING,
TEXT_BITFIELD TYPE STRING,
TEXT_BUTTON_START TYPE STRING,
TEXT_BUTTON_CHECK TYPE STRING,
TEXT_BUTTON_NAVHIST TYPE STRING,
ICON_NAME_NAVHIST TYPE STRING,
TEXT_BUTTON_OBJINFO TYPE STRING,
ICON_NAME_OBJINFO TYPE STRING,
TEXT_BUTTON_MEMBERS TYPE STRING,
ICON_NAME_MEMBERS TYPE STRING,
TAB_TXT_MEMBERS TYPE STRING,
TAB_TXT_KEY TYPE STRING,
TAB_TXT_INDEXES TYPE STRING,
HEADER_HEX_OBJECT TYPE STRING,
HEADER_HEX_KEY TYPE STRING,
HEADER_VALUE TYPE STRING,
HEADER_VALUE_INDEX TYPE STRING,
HEADER_OBJECTINFO TYPE STRING,
HEADER_MEMBER TYPE STRING,
HEADER_START TYPE STRING,
LABEL_START_OID TYPE STRING,
LABEL_TENANT TYPE STRING,
LABEL_OID TYPE STRING,
LABEL_CLASSID TYPE STRING,
LABEL_CLASSNAME TYPE STRING,
LABEL_SCHEMAHANDLE TYPE STRING,
LABEL_SCHEMANAME TYPE STRING,
LABEL_CONTAINERNO TYPE STRING,
LABEL_INPUT_KIND TYPE STRING,
LABEL_INPUT_TYPE TYPE STRING,
LABEL_OBJ_TYPE TYPE STRING,
LABEL_DISCLOSED TYPE STRING,
LABEL_CLASSSIZE TYPE STRING,
LABEL_KEYSIZE TYPE STRING,
LABEL_KEYNAME TYPE STRING,
LABEL_REVISIONNO TYPE STRING,
LABEL_REFRESH TYPE STRING,
LABEL_MEMBER TYPE STRING,
LABEL_MEMBER_INDEX TYPE STRING,
DISP_OBJECTINFO TYPE STRING,
DISP_MEMBERS TYPE STRING,
DISP_INDEXES TYPE STRING,
DISP_KEYINFO TYPE STRING,
DISP_KEY_MEMBERS TYPE STRING,
DISP_NOT_DISCLOSED TYPE STRING,
DISP_VALUE TYPE STRING,
DISP_VALUE_INDEX TYPE STRING,
DISP_BITFIELD TYPE STRING,
DISP_C_NAVHIST TYPE STRING,
DISP_C_MEMBERS TYPE STRING,
DISP_C_OBJINFO TYPE STRING,
ACTIVETAB TYPE STRING,
DISP_INPUT_SUBDYN TYPE STRING,
DISP_INPUT_FIELDS TYPE STRING,
ZUGRIFF_ART TYPE STRING,
ZUGRIFF_TYPE TYPE STRING,
LABEL_PNO TYPE STRING,
LABEL_PAGEPOS TYPE STRING,
LABEL_GENERATION TYPE STRING,
LABEL_INPUT_GUID22_CHAR TYPE STRING,
LABEL_INTEGER_KEY TYPE STRING,
IN_KEY_STRUCT TYPE STRING,
22CHAR_KEY TYPE STRING,
GUID22_HEX_KEY TYPE STRING,
16_BYTE_HEX_KEY TYPE STRING,
INT4_KEY TYPE STRING,
CLASSID TYPE STRING,
SCHEMAHANDLE TYPE STRING,
CONTAINERNO TYPE STRING,
CURRENT_KEY_STRUCT TYPE STRING,
22CHAR_KEY TYPE STRING,
GUID22_HEX_KEY TYPE STRING,
16_BYTE_HEX_KEY TYPE STRING,
INT4_KEY TYPE STRING,
CLASSID TYPE STRING,
SCHEMAHANDLE TYPE STRING,
CONTAINERNO TYPE STRING,
LABEL_INPUT_GUID22_HEX TYPE STRING,
LABEL_INPUT_16_BYTE_HEX TYPE STRING,
IN_OID_AS_STRUCT TYPE STRING,
PNO TYPE STRING,
PAGEPOS TYPE STRING,
GENERATION TYPE STRING,END OF T_EKKO_STR. DATA: WA_SDB_OMS_OBJECT_BROWSER_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_SDB_OMS_OBJECT_BROWSER_STR-CURRENT_INPUT_TYPE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CURRENT_ACCESS_TYPE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-IN_OID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TENANT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CURRENT_OID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CURRENT_REVISIONNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEX_REVISIONNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-REFRESH_DATE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-REFRESH_TIME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-OBJECTINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-OID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-VALUE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CLASSID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CLASSNAME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-SCHEMAHANDLE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-SCHEMANAME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CONTAINERNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TYPE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISCLOSED sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CLASSSIZE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-KEYINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-KEYNAME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-KEYSIZE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-SCALE_CLASSSIZE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-SCALE_KEYSIZE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-MEMBER sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-MEMBER_INDEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-NAVIGATION_TABLE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-INDEXES sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-VALUE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-VALUE_INDEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEX_OBJECT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEX_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-VALUE_STRING sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-VALUE_INDEX_STRING sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEX_OBJECT_STRING sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEX_KEY_STRING sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_NOT_DISCLOSED sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_BITFIELD sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_BUTTON_START sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_BUTTON_CHECK sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_BUTTON_NAVHIST sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-ICON_NAME_NAVHIST sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_BUTTON_OBJINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-ICON_NAME_OBJINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TEXT_BUTTON_MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-ICON_NAME_MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TAB_TXT_MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TAB_TXT_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-TAB_TXT_INDEXES sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_HEX_OBJECT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_HEX_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_VALUE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_VALUE_INDEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_OBJECTINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_MEMBER sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-HEADER_START sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_START_OID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_TENANT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_OID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_CLASSID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_CLASSNAME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_SCHEMAHANDLE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_SCHEMANAME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_CONTAINERNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_INPUT_KIND sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_INPUT_TYPE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_OBJ_TYPE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_DISCLOSED sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_CLASSSIZE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_KEYSIZE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_KEYNAME sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_REVISIONNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_REFRESH sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_MEMBER sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_MEMBER_INDEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_OBJECTINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_INDEXES sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_KEYINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_KEY_MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_NOT_DISCLOSED sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_VALUE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_VALUE_INDEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_BITFIELD sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_C_NAVHIST sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_C_MEMBERS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_C_OBJINFO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-ACTIVETAB sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_INPUT_SUBDYN sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-DISP_INPUT_FIELDS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-ZUGRIFF_ART sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-ZUGRIFF_TYPE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_PNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_PAGEPOS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_GENERATION sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_INPUT_GUID22_CHAR sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_INTEGER_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-IN_KEY_STRUCT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-22CHAR_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-GUID22_HEX_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-16_BYTE_HEX_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-INT4_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CLASSID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-SCHEMAHANDLE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CONTAINERNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CURRENT_KEY_STRUCT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-22CHAR_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-GUID22_HEX_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-16_BYTE_HEX_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-INT4_KEY sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CLASSID sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-SCHEMAHANDLE sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-CONTAINERNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_INPUT_GUID22_HEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-LABEL_INPUT_16_BYTE_HEX sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-IN_OID_AS_STRUCT sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-PNO sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-PAGEPOS sy-vline
WA_SDB_OMS_OBJECT_BROWSER_STR-GENERATION sy-vline INTO ld_text SEPARATED BY SPACE. *Add any further fields from structure WA_EKKO_STR you want to CONCATENATE... ENDLOOP. ENDFORM.