如上图所示,要通过程序实现这一功能。
程序代码如下:
DATA: lw_product TYPE comxif_product_indobj,
lw_categories TYPE comxif_pr_s_categories,
lw_cate TYPE comxif_prd_s_categories,
lw_admin TYPE comxif_product_s_admin.
DATA: lv_logsys TYPE comt_logsys.
DATA: lt_categories TYPE comxif_pr_s_categories_t,
lt_product TYPE comxif_product_indobj_t.
DATA: lt_bapiret TYPE bapiretm.
***************************************
* Iobject Category *
***************************************
CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
own_logical_system = lv_logsys
EXCEPTIONS
own_logical_system_not_defined = 1
OTHERS = 2.
lw_cate-category_id = '0401'.
lw_cate-hierarchy_id = 'R3PRODSTYP'.
lw_cate-logsys = lv_logsys.
lw_admin-task = 'I'. "<insert (I), update(u) , delete(d)>
lw_admin-logsys = lv_logsys.
lw_admin-upname = sy-uname.
lw_categories-data = lw_cate.
lw_categories-s_admin = lw_admin.
*
APPEND lw_categories TO lt_categories.
lw_product-categories = lt_categories.
***************************************
* Individual object Details *
***************************************
lw_product-task = 'I'. "<insert (I), update(u) , delete(d)>
lw_product-indobj_id = '100000'.
lw_product-object_family = '0401'. "<if you have no idea, just create an iobject from ib51/52 and check table comm_product>
lw_product-logsys = lv_logsys. "<current logical system>
lw_product-upname = sy-uname.
APPEND lw_product TO lt_product.
CALL FUNCTION 'CRMXIF_PRODUCT_INDOBJ_SAVE'
EXPORTING
data = lt_product
IMPORTING
return = lt_bapiret. "<return table>.
"IF no error IN the RETURN TABLE,
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
其中,category_id和hierarchy_id(类别ID和层次ID),可以在WebUI上查找,或者通过T-code:COMM_HIERARCHY /SE16:COMM_HIERARCHY 来进行查找。
把已存在的Product或IObject作为Component挂到安装点上可参考如下链接的内容:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.