使用report 打印category 03的IBASE hierarchy
Created by Jerry Wang, last modified on Sep 16, 2014
?
?
?
?
?
?
?
?
?
使用report 打印hierarchy:
?
?
?
?
*&---------------------------------------------------------------------*
?
*& Report ?ZIBASE_READ_STRUCTURE
?
*&
?
*&---------------------------------------------------------------------*
?
*&
?
*&
?
*&---------------------------------------------------------------------*
?
?
REPORT zibase_read_structure_03.
?
?
PARAMETERS: id TYPE ibib-ibase OBLIGATORY DEFAULT '112448'.
?
?
START-OF-SELECTION.
?
?
DATA: ls_header ? ? ?TYPE ibap_head1,
?
? ? ? lt_struc_tab ? TYPE ibap_struc1_tab,
?
? ? ? ls_line ? ? ? ?LIKE LINE OF lt_struc_tab,
?
? ? ? ls_comp ? ? ? ?TYPE ibap_dat1,
?
? ? ? ls_comp_detail TYPE ibap_comp2.
?
?
ls_header-ibase = id.
?
?
PERFORM handle_ibase USING ls_header-ibase.
?
?
FORM print_object_str USING iv_ibase_id TYPE ibib-ibase.
?
* source - object guid target: ibase guid
?
? ?DATA: ls_link TYPE COMM_IL_PRDIB,
?
? ? ? ? ?lv_id TYPE comm_product-product_id.
?
?
? ?SELECT SINGLE * INTO CORRESPONDING FIELDS OF ls_link FROM COMM_IL_PRDIB AS A INNER JOIN ibib AS B ON
?
? ? ? A~destinguid = B~ib_guid_16 WHERE B~ibase = iv_ibase_id.
?
? ?CHECK sy-subrc = 0.
?
?
? ?SELECT SINGLE product_id FROM comm_product INTO lv_id WHERE product_guid = ls_link-sourceguid.
?
?
? ?CHECK sy-subrc = 0.
?
?
? ?WRITE: / 'Object ID: ', lv_id COLOR COL_HEADING.
?
ENDFORM.
?
?
FORM get_obj_struc USING iv_obj_guid TYPE comm_product-product_guid.
?
? " try to find object structure IBASE id
?
? " source obj_guid destination ibase guid
?
? ?DATA:
?
? ? ? ? ?lv_id TYPE ibib-ibase.
?
?
? ?SELECT SINGLE ibase INTO lv_id FROM ibib AS A INNER JOIN COMM_IL_PRDIB AS B ON
?
? ? ? A~ib_guid_16 = B~destinguid WHERE B~sourceguid = iv_obj_guid.
?
? ?CHECK sy-subrc = 0.
?
?
? ?PERFORM handle_ibase USING lv_id.
?
ENDFORM.
?
?
FORM handle_obj_component USING iv_ibase_id TYPE ibib_ibase.
?
?
? WRITE: / 'IBASE ID: ', iv_ibase_id COLOR COL_POSITIVE.
?
? ls_header-ibase = iv_ibase_id.
?
? CALL FUNCTION 'CRM_IBASE_GET_DETAIL'
?
? ?EXPORTING
?
? ? ?i_ibase_head ? ? ?= ls_header
?
? ?IMPORTING
?
? ? ?e_struc_ibase_tab = lt_struc_tab
?
? ?EXCEPTIONS
?
? ? ?not_specified ? ? = 1
?
? ? ?doesnt_exist ? ? ?= 2
?
? ? ?no_authority ? ? ?= 3.
?
?
? ASSERT sy-subrc = 0.
?
?
? LOOP AT lt_struc_tab INTO ls_line.
?
? ? WRITE: / 'Component ID: ' , ls_line-instance COLOR COL_NEGATIVE.
?
? ? ls_comp-ibase = iv_ibase_id.
?
? ? ls_comp-instance = ls_line-instance.
?
? ? CALL FUNCTION 'CRM_IBASE_COMP_GET_DETAIL'
?
? ? ? ?EXPORTING
?
? ? ? ? ?i_comp ? ? ? ?= ls_comp
?
? ? ? ?IMPORTING
?
? ? ? ? ?e_comp_det ? ?= ls_comp_detail
?
? ? ? ?EXCEPTIONS
?
? ? ? ? ?not_specified = 1
?
? ? ? ? ?doesnt_exist ?= 2
?
? ? ? ? ?no_authority ?= 3.
?
?
? ?WRITE: / 'Component Description:' , ls_comp_detail-descr COLOR COL_POSITIVE,
?
? 'Object ID: ', ls_comp_detail-object_id COLOR COL_GROUP.
?
? ?WRITE: / 'Component guid: ' , ls_comp_detail-guid_comp COLOR COL_KEY,
?
? ? 'component guidc: ' , ls_comp_detail-guid_compc COLOR COL_HEADING.
?
? ?PERFORM get_obj_struc USING ls_comp_detail-object_guid.
?
? ENDLOOP.
?
?
ENDFORM.
?
?
?
FORM handle_ibase USING iv_ibase_id TYPE ibib-ibase.
?
? ?PERFORM print_object_str USING iv_ibase_id.
?
? ?PERFORM handle_obj_component USING iv_ibase_id.
?
?
?
ENDFORM.
?
總結
以上是生活随笔為你收集整理的使用report 打印category 03的IBASE hierarchy的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: paraview显示指定时间段的时均图(
- 下一篇: c# 创建excel表头及内容