一个不使用CRM中间件成功地将ERP Material下载到CRM的原型开发
发布日期:2021-06-30 14:08:00
浏览次数:2
分类:技术文章
本文共 3921 字,大约阅读时间需要 13 分钟。
Requirement
Replicate a material type for example MAT_YYYY into CRM system without using middleware.
After replication, the generated category could be used in normal product scenario ( for example, create new product based on this category, read / query operation on this category etc )I have successfully written a API which could replicate data ( to simulate T134 ) into CRM category table.
Once this API is executed, a new category will be created in CRM system, without middleware.This category could be found in tcode COMM_HIERARCHY:
Unfortunately, it is not visible in product creation page 😦
bug fixed now. POC is done.
Run method in SE24, specify new product category id via parameter iv_cat_id:Execute method, ensure ev_success equals to abap_true.
Once created, the category could be searched via tcode COMM_HIERARCHY:
And the category could be used to create new product in WebUI:
source code
METHOD replicate_category. CONSTANTS: BEGIN OF gc_application, sales TYPE comt_application VALUE '01', "r3-produkthier purchasing TYPE comt_application VALUE '02', "r3 mat class product TYPE comt_application VALUE '03', "r3 mat types config TYPE comt_application VALUE '04', internet TYPE comt_application VALUE '05', END OF gc_application. CONSTANTS: BEGIN OF gc_product_type, material TYPE comt_product_type VALUE '01', service TYPE comt_product_type VALUE '02', finance TYPE comt_product_type VALUE '03', ip_prod TYPE comt_product_type VALUE '04', warranty TYPE comt_product_type VALUE '05', tradeitem TYPE comt_product_type VALUE '06', fs_prod TYPE comt_product_type VALUE '07', END OF gc_product_type. rv_success = abap_false. DATA: lv_hierarchy_guid TYPE comt_hierarchy_guid, lv_parent_guid TYPE comt_category_guid, lt_categoryt TYPE comt_categoryt_tab.* Prerequisite: the corresponding hierarchy is already downloaded from ERP* Read the hierarchy which is assigned to application 03* (product type material) in transaction COMM_PRAPPLCAT CALL FUNCTION 'COM_HIERARCHY_READ_WITH_APPL' EXPORTING iv_application = gc_application-product iv_product_type = gc_product_type-material IMPORTING ev_hierarchy_guid = lv_hierarchy_guid EXCEPTIONS not_found = 1 OTHERS = 2. CHECK sy-subrc = 0. DATA(ls_cat_text) = VALUE comt_categoryt( langu = sy-langu category_text = iv_text text_upper_case = iv_text ). TRANSLATE ls_cat_text-text_upper_case TO UPPER CASE. APPEND ls_cat_text TO lt_categoryt. select single category_guid into lv_parent_guid FROM comm_category where category_id = 'MAT_'. CALL FUNCTION 'COM_PRODCAT_API_CREATE_CAT' EXPORTING iv_category_id = iv_cat_id iv_hierarchy_guid = lv_hierarchy_guid iv_parent_guid = lv_parent_guid iv_product_type = gc_product_type-material it_categoryt = lt_categoryt iv_logsys = iv_log_sys " 'QI3CLNT502' iv_non_assignable = abap_false EXCEPTIONS hierarchy_not_maintained = 1 wrong_call = 2 category_id_exists = 3 id_scheme_error = 4 error = 5 OTHERS = 6. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE 'X' NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. RETURN. ENDIF. CALL FUNCTION 'COM_PRODUCT_CATEGORY_SAVE_ALL' EXPORTING iv_update_task = ' ' iv_update_pme = ' ' iv_hierarchy_guid = lv_hierarchy_guid EXCEPTIONS internal_error = 1 OTHERS = 2. ASSERT sy-subrc = 0. COMMIT WORK AND WAIT. rv_success = abap_true. ENDMETHOD.
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
转载地址:https://jerry.blog.csdn.net/article/details/104124792 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月25日 05时19分16秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Netty与网络协议资料整理
2019-04-30
golang实现大数据量文件的排序
2019-04-30
golang中的time包
2019-04-30
2019NOIP D4题 加工领奖
2019-04-30
2021.5.19 JS高级第二天
2019-04-30
SpringBoot内置Tomcat配置参数
2019-04-30
ubuntu 快捷键
2019-04-30
linux 根目录下文件夹分析
2019-04-30
linux 查看分区和文件大小
2019-04-30
Not using PCAP_FRAMES 解释(snort中)
2019-04-30
技术转管理?这些“坑”你要绕道走
2019-04-30
领域驱动设计(DDD)前夜:面向对象思想
2019-04-30
Camera驱动调试小记
2019-04-30
四线触摸屏原理
2019-04-30
C/C++如何返回一个数组/指针
2019-04-30
腾讯AI语音识别API踩坑记录
2019-04-30
YbtOJ——递推算法【例题4】传球游戏
2019-04-30
安装openrave 0.9的各种依赖包
2019-05-01
kpm代码使用细节
2019-05-01
@FeignClient注解的重复名称解决
2019-05-01