ABAP ALE&IDoc& EDI技巧

我在新环境中,学到的最多的东西就是接口技术,也是我觉得很有用的一些知识。

由于公司业务复杂,第三方系统很多,有很多业务系统在上面跑。SAP引入之后,就需要和第三方系统做接口,比如订单、物流什么的。不过有一个很好的趋势,很多老系统在被淘汰,原来的一些核心业务正在向SAP移植,可见SAP还是不错的,这口饭还有得吃。

我这边的接口类型有不少,比如ALE/IDoc,PI,FTP等。但是PI主要还是在某几个模块上进行使用(感觉有点试验的性质),FTP也是在特定的业务中使用,而ALE/IDoc已经广泛使用了。ALE/IDoc广泛使用的原因有很多,一方面是基于EDI标准,同时这个技术经过时间的考验已经相当成熟。我接下来会主要讲讲ALE/IDoc,其间可能会提到一些EDI和PI。

IDoc(Intermediate Document),顾名思义,就是用作中间媒介的一种文件。是一种通用的标准格式,这样可以方便第三方软件对IDoc进行处理。

ALE(Application Link Enabling),主要用于同一个企业不同SAP系统之间的数据交换。一个企业比较大的话,会设有多个SAP系统,光R/3可能就要好几台服务器,再加上BI,PI啊,多的去了,这个就是ALE的用武之地。国外这样的情况很多,你可以上上国外的一些SAP论坛,ALE/IDoc的问题天天有人问。

EDI(Electronic Data Interchange),名字上来看就是电子数据交换,用于不同企业间的电子数据的交换。比如,你要用DHL进行发货,那么就可以直接通过EDI来通知DHL,并且进行反馈。这里的IDoc是符合EDI标准的,需要用EDI子系统进行转换。

这里我要说一下分布式,听起来很玄乎的一个词。简单点来说就是,由于服务器性能和地域的限制,一个公司不可能把所有的业务都在一台机器上做,那么就要分开来。分开来之后,就有了几台,几十台,甚至几百台的服务器中。不同机器存储着相关的主数据,也就是说牵一发,而动全身,改动一台中的数据,就要使其他服务器上的数据也要做相应改动。如果人工来干这件事情的话,可想而知这个工作量和风险了,这是我们就引入了ALE/IDoc。有了这个技术,可以做到分布式主数据自动修改,只要有一台机器改动了,就会自动向其他相关服务器发出消息,说‘Hi, Let’s update together!’,结合SAP的Job技术,所有的一切都是自动的。这个对于跨区域的大型公司来说是很有用的!

ALE/IDoc的实践性很强的技术,也就是说你做得越多,碰到的问题越多,提高也就越多,光是理论是没什么用得。

   所以先把一般配置一套ALE/IDoc的流程总结一下,以后再把经验性、总结性的东西慢慢添加进去。
   有两个比较有用的Menu T-codeWEDI, SALE。分别用来配置IDoc/EDI, ALE的。
 
自定义IDoc流程:
Create Segment: WE31
Create IDoc Type: WE30
Create IDoc Message Type: WE81
Assign Message Type to IDoc Type: WE82
 
ALE配置:
T-code SALE
Define Logical System
Assign Logical System to Client
ABAP ALEIDoc EDI技巧之2--一般流程.doc - 天涯倦客 - 天涯倦客的博客

 

T-code : SM59 Create RFC connections
ABAP ALEIDoc EDI技巧之2--一般流程.doc - 天涯倦客 - 天涯倦客的博客

 

T-code : WE21 Port definition
T-code : BD64 Create Distribution Model
T-code : WE20 Partner profile
 
IDoc的测试
T-code : WE19
 
IDoc的显示
T-code: WE02
 
Outbound Processing:
T-code : WE41 Outbound process code
 
Inbound Processing:
T-code: BD51 ALE Attributes
T-code: WE57 Message/application object
T-code: WE42 Inbound process code

 

posted on 2011-12-28 23:30  小顾问  阅读(5735)  评论(1编辑  收藏  举报