您的位置:首页 > 其它

ALE&IDoc& EDI(3)--change point01

2016-07-09 09:39 417 查看
 SAP中实现分布式的一个机制就是ALE/IDoc,而在具体一点就是change
point。

         Change point是用来分发主数据的。主要有两种实现方式,一种是直接方式,另外一种是通过SMD tool(shared
data master tool)来实现。

   我们先来讲一下直接方式。所谓的直接方式,就是运行一个为一个主数据专门的Repoort程序,填入相关参数,就可以对此主数据进行分发。

一般这样的报表的名字是这样的:RBDSE***,***是message type的前三位,比如物料主数据MATMAS,它的程序就是RBDSEMAT。

   这些程序的逻辑都是固定的,其中总有一个名字形如:MASTERIDOC_CREATE_REQ_*****的Function,*****是message type,接上个例子,就是MATMAS。这个程序就是执行change point和生成IDoc的主要Function。

CALL FUNCTION 'MASTERIDOC_CREATE_REQ_MATMAS'

这个Function中有几点大家要注意的:

1.         DATA: C_MSGFN_R LIKE BDIMARAKEY-MSGFN VALUE '005'.  

生成的IDoc中MSGFN字段都是’005’

2.      CALL FUNCTION 'MASTERIDOC_CREATE_MATMAS

上面的Function中 CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'

就是把IDoc传到ALE,进行分发。

3.         最后才是提交和解锁

    COMMIT WORK.

    CALL FUNCTION 'DEQUEUE_ALL'.      
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: