SAP CRM中间件增强(1)

在此搜集整理本人遇到过的一些关于CRM与ERP中间件的增强开发方式

AET同步

业务背景: 在CRM端的销售订单抬头使用AET增加了一个Custom 字段,该字段在ERP并不存在,现在需要在ERP同步数据。

准备阶段

  1. CRM端
    AET增强该字段,并勾上R3适配器
    这里写图片描述

    对于所有One Order来说,SAP使用 BUS_TRANS_MESSAGE Bdoc进行传输。该Bdoc通过Badi: CRM_BUS20001_R3A对不同的Order提供多种实施。例如,CRM_SALSESDOCU_R3A实施是用来上载销售单据的。Badi: CRM_DATAEXCHG_BADI是另一个极为重要的Badi,其中的实施CRM_BTX_FIELDEXT用来处理各种AET增强字段。

  2. ERP端
    BAPI_SALESDOCU_PROXY_UPLOAD用来处理从CRM过来的所有数据。
    CRS_SEND_TO_SERVER则是ERP的通用outbound module,当数据从ERP到CRM时,都会调用该函数。

    当我们在CRM端修改了一条销售订单抬头的AET字段时,调用顺序为CRM Badi CRM_BUS20001_R3A –> ERP BAPI_SALESDOCU_PROXY_UPLOAD –> ERP CRS_SEND_TO_SERVER…

具体实现阶段

  1. Extend ERP的结构
    将所有AET字段放到一个Z-Structure中,并将此结构Append到如下区域:
    表VBAK,结构VBAKKOZ,结构BAPE_VBAK

    创建第二个Z-Structure-X,与第一个结构字段名称一样,但是数据类型都为Char1。并将此结构Append到如下区域:
    结构VBAKKOZX,结构BAPE_VBAKX

  2. Extend CRM的结构
    因为在准备阶段已经打上了”R3适配器” Checkbox,因此CRM端的对应结构中已存在该字段,可以去结构CRMT_BTX_EEW_BAPE_VBAK与CRMT_BTX_EEW_BAPE_VBAKX中进行检查。

    至此该AET字段将会自动同步到ERP中。

原文地址:https://blogs.sap.com/2011/01/18/crm-aet-how-to-exchange-your-customer-order-fields-with-erp-backend/

发布了19 篇原创文章 · 获赞 10 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/LoveSolar/article/details/71453132