Created by Jerry Wang, last modified on Sep 22, 2014
如果parent和children equip 都成功的从ERP download到CRM里,但是CRM 的object structure里只能看到child equip,看不到parent equip,一种原因是object category里缺少relationship PRDIB, 见如下error message:
下面的report能够输入object category,打印出该category当前assign的所有relationship,并检查PRDIB是否已经assign:
REPORT ZPROD_CAT_CHECK_REL.
PARAMETERS: cat_id TYPE comm_category-category_id OBLIGATORY DEFAULT 'OBJ_0401'.
START-OF-SELECTION.
DATA:
lt_guid TYPE COMT_CATEGORY_GUID_TAB,
ls_guid LIKE LINE OF lt_guid,
lt_rel TYPE COMT_PRCAT_IL_REL_TAB.
SELECT SINGLE category_guid FROM comm_category INTO ls_guid-category_guid WHERE category_id = cat_id.
IF sy-subrc <> 0.
WRITE: / 'Category ID Invalid'.
RETURN.
ENDIF.
APPEND ls_guid TO lt_guid.
CALL FUNCTION 'COM_PRCAT_IL_REL_READ_MULTIPLE'
EXPORTING
it_category_guid = lt_guid
"iv_current = iv_current
"iv_timestamp = iv_timestamp
"iv_update_buffer = iv_update_buffer
IMPORTING
et_prcat_il_rel = lt_rel
EXCEPTIONS
wrong_call = 1
not_found = 2
OTHERS = 3.
IF sy-subrc = 2.
WRITE: / 'no relationship assigned for current category.'.
RETURN.
ENDIF.
WRITE: / 'currently assigned relationship: ' COLOR COL_GROUP.
LOOP AT lt_rel ASSIGNING FIELD-SYMBOL(<current>).
WRITE: / <current>-il_reltype COLOR COL_NEGATIVE, 'Change user: ', <current>-upname COLOR COL_TOTAL.
ENDLOOP.
READ TABLE lt_rel WITH KEY il_reltype = 'PRDIB' TRANSPORTING NO FIELDS.
IF sy-subrc <> 0.
WRITE: / 'PRDIB relationship not maintained, you could not get hierarchy downloaded completely.' COLOR COL_POSITIVE.
ELSE.
WRITE: / 'PRDIB maintained ok.'.
ENDIF.