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'.
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'.
相关文章推荐
- Longest Common Prefix
- C#语言基础――结构体和枚举类型全面解析
- 采购订单_退货
- Mahout推荐开发总结
- ALE&IDoc& EDI(2)--一般流程
- 合并两个排序链表
- Android GridView属性集合
- 织梦dedecms SQL语句批量清除注册会员信息
- ALE&IDoc& EDI(1)--OverView
- 带权图的最短路径算法(Dijkstra)实现
- [Leetcode]198. House Robber
- ubuntu12.04 vim的vundle插件安装方法
- 欢迎使用CSDN-markdown编辑器
- 如何使用LINQ链接数据库并操作数据库
- hdu 5066 Harry And Physical Teacher(物理)
- SAP中:ALE控制单元是什么?
- java堆栈区别
- poj 3321(树状数组)
- 如何使用CommitMonitor工具监控 SVN
- mysql-python安装时EnvironmentError: mysql_config not found