登陆PO服务器,启动JAVA客户端三步(SAP PO 开发一)
搭建一个WebService接口环境(SAP PO 开发 二)
用SAP PO连通一个WebService接口(SAP PO 开发 三)
ERP系统RFC协议发送端通过PO连通WebService接口(SAP PO 开发四)
我的第一个SAP PROXY ABAP Program(SAP PO 开发五)
SAP PO (Process Orchestration) 中间件接口管理平台(SAP PO 开发六)
C# 调用SAP PO中间件的WebService接口(SAP PO 开发八)
前面我们有了自己的WebService接口环境,客户端是SoapUI, 服务端是WebService,8000端口的一个服务(输入参数一个数字,返回参数是一个字符串),详见“SAP PO 开发 二”。
一、SAP PO简介:
SAP PO(Process Orchestration),是基于SAP Net weaver平台的中间件产品,为企业提供一套支持SAP系统间、SAP系统与Non-Sap系统间以及Non-SAP系统间进行数据交换和流程整合的平台,数据集成可以是A2A或B2B,支持同步和异步的数据交互方式;基于此,PO支持多个系统间的数据流的集成,从而支持业务层面的流程整合,即BPM(业务流程管理);BRM(业务规则管理)功能为BPM提供基于业务规则的业务流程流转,预定义的业务规则,为BPM的业务节点提供基于规则的决策,极大的提高了BPM的业务效率。
PO建立在完全的开放的Web Service架构上的,支持来自不同供应商、高度异构、应用不同技术的系统之间的数据交换和流程整合。PO开发基于可视化和拖拽式的配置,零代码实现各系统间的WEB接口,从而实现资源的共享,降低公司的集成成本,减少代码所带来的复杂度和系统升级的难度。
PO 接口技术标准提供了基于组件的开放式集成架构,有助于建立柔性的,可靠的和可扩展的E-Business 解决方案。PO 建立在web services 、XML messaging 、 J2EE等工业标准只是,能够与目前使用任何技术的第三方软件进行集成,支持File、JDBC、HTTP、RFC、IDOC、BPM、ABAP Proxy、JMS、MAIL、SMTP、SOAP、PCK(SAP Partner Connectivity Kit )以及各类工业领域的标准集成包。
二、PO的版本演进:
XI(Exchange Infrastructure),2002~2005 (ABAP & JAVA Dual Stack)
XI(Data Exchange Infrastructure)
PI(Process Integration),2005~2012 (ABAP & JAVA Dual Stack)
XI( Data Exchange Infrastructure)
BPM(Business Process Management)
PO(Process Orchestration),2012~2019 (JAVA Stack Only)
XI( Data Exchange Infrastructure)
BPM(Business Process Management)
BRM(Business Rule Management)
PO已经有7年老了,它拥有3大主要功能,只在JAVA堆的环境使用运行。
三、PO的特点:
SAP销售告诉我,大概每25个SAP ERP系统,其中就会有一个SAP PO中间件在配套使用,
中国目前有6000个SAP ERP系统,那么中国应该有几百个PO服务器在运行。
对于SOA中间件,我感觉最大的益处就是能够快速接通多个系统,降低企业IT系统的集成时间和难度。
PO的强项应该是在它提供特有的PROXY技术功能实现同ERP-SAP系统的高级集成,
弱项其中一个是它没有MQ服务端,只有JMS客服端。在消息管理上,功能还有待我去了解,这里不发表评价。
四、PO开发的环境:
SAP PO服务器安装后,提供web供用户访问,web中可以作一些开发配置。
比较复杂的开发配置,SAP采用了JAVA桌面程序客户端来给用户使用。
JAVA桌面程序工作端口:80,8101,50000。环境详见:SAP PO 开发 一
配置大概分为三大块:
1、SLD是在浏览器里就可以配置。
2、ESR JAVA桌面程序里配置。
3、ID JAVA桌面程序里配置。
(一) 我们首先在SLD中配置我们的DEMO实例数据:
这个接口的请求端和服务端的产品、组件、技术系统、业务系统等等,都通通配置上去,因为在后面会使用到这些。
请求方是我的笔记本,上面用SoapUI发起WS请求;服务方是我的一个程序,已经放到了WIN2008服务器上。
(二)进到ESR里面去,我们要配置2个接口的内容:
1、请求方接口的DateType、MessageType、ServiceInterface
我们的接口是同步接口,请求发出去,马上会返回结果,所以可以看到,
DateType、MessageType都配有发送(req)和返回(back)2项。
在ServiceInterface的配置中,我们可以看到同步模式会包含请求request的MessageType和response的MessageType。
最简单的DT:
2、WS的服务方的ESR配置:
因为服务方的WebService有WSDL(接口标准描述)文件,所以我们不需要自己再建什么DT和MT了。
把该接口的WSDL文件导入进来,会产生一个ED_demo003:
用这个ED,我们可以直接创建ServiceInterface:
在ESR中的SI(ServiceInterface)服务,是对应于外围系统的接口。
下图中我们看到,我们分别完成了接口2端的DT、MT、SI。
接下来我们还需要配置接口的MessageMapping(MM),因为同步接口是双向的,
所以这个MessageMapping也有2个,在去的路上mapping一个,在回来的路上mapping一个。
MM做完,还要作一个Opertion Message (OM)
(三)最后进到ID里面去配置的内容:
1、我们要把SLD中的BS(业务系统)导入到ID中。
2、我们要建一个目录和场景。
场景中一开始是空的,我们完成“CC”通道和“IC”集成药丸配置后,场景中就会有这些内容:
3、完成CC通道配置,这个CC看起来是在说明外围系统的接口:
4、我们最后配一个IC,把这些都集成起来:
最后把这个IC的WDSL给SoapUI客户端使用:
发送数据测试成功(注意PO要用户名和密码):
总结:
PO的配置里面有很多的概念,配置的方向大致应该是这样: