PI 是由多个组件一起构成的,分别来介绍一下:
Integration Builder: 包含了IR(Integration Repository) 和ID(Integration Directory) 。IR 和ID 的分置,主要是把设计和配置分开了。IR 就像ALE/IDoc 中定义Segment ,IDoc 的结构,Message Type 及关联Message type 和IDoc Type 等,当然它多了一个Mapping 。ID 就类似于ALE/IDoc 中的Partner Profile 和Distribution Model 一样,定义Message 从哪里来,到哪里去,ID 要比之复杂。
IS(Integration Server): 运行PI 的主要引擎。
SLD(System Landscape Directory): 主要是定义一些与其他系统的连接,定义Products ,Software component 。类似于定义Port ,Logical System 之类的。
BPE(Business Process Engine): 用于实现BPM 能力。利用工作流引擎,在运行时生成集成过程。
IE(Integration Engine): 实现XML 消息处理,可以IDoc , http request 和RFC 等。它是PI 的运行时环境,处理接受、处理和发送XML 消息。
AE(Adapter Engine): 用以连接SAP 与外部系统。把XML 和Http 转化为Partner System 要求的消息格式,反之亦然。它是基于SAP J2EE Engine, J2EE Connector Architecture(JCA) 。也就说,是通过JAVA 来实现的。
这里我想提一下,PI 严格意义上来讲已经是用JAVA 开发出来的一套产品,只不过它的外观还保持了SAP 一贯的分格而已。JAVA 在Web 开发上,确实很强大,这点ABAP 是没法比的,特别是在交互界面上。所以说,SAP 的技术人员,学点JAVA 还是要的。
我在大学的时候搞过一段时间JAVA ,不是很难,只要有本参考,学点基本语法就能上手。记得当时,我还花了些钱去考了张Sun 的JAVA 认证程序员证书,现在想想,还算值,起码基础打得还是扎实的。后来毕设的时候还搞过一个JAVA 的网站,用了当时一些号称比较好的架构,什么Struts, Hibernate, Tomcat, MySQL, Eclipse 啊,好好地玩了一吧。感觉也就这样,远远没有做SAP 那么有意思。