SAP PI BIT400培训笔记
BIT400培训笔记:
一、PI概览
1、PI帮助企业实现SOA企业总线架构,业务流程集成,Collaborative Business
2、ESB(Design、Message and Format),IB(Connection and Route),SLD(Registry),Workbench(Monitor), IS(Integration Server:Business Process Engine(当接口与接口之间有数据依赖关系时需用其做流程整合), Integration Engine, Advanced Adpater Engine)
3、Product, Software Component, Technical System, Business System都必须在SLD中的注册,并且可以导入到ESR中
4、在ESR中定义接口和映射
5、在ID中定义Sender Agreement, Receiver Determination, Interface Determination, Receiver Agreement
6、PI Adapter是将外部的消息格式转换成PI Format,符合JMS规范,用户可以自定义开发Adapter
7、PI Runtime Procedure:Business System A->Receiver Determination->Interface Determination->Message Branching->Mapping->Technical Routing->Transfer to Adatper->Business System B
8、PI在ESR中的几种模型:Process component architectural models, Process integration scenarios
9、PI的功能点概览
a、asynchronous and synchronous
b、using various adapters
c、transfer files as a data source and write messages
10、PI的历史版本区别:XI3.0 与7.0是一样的,7.0与7.1功能上变化大,7.1到7.3功能变化不大,但是7.3可以安装存Java版本,7.3能够提高传输的性能11、PI7.3增加了无ABAP Engine的版本,目前在如下Scenario用过此版本:当集团中的各子系统之间不允许直接连接,因为有防火墙,这种情况下就需要采用纯Java的架构来解决。
12、PI一般有一个备份机制,就是所有正常的会两天或者几天后Archieve,只保留错误和异常的
二、SLD
1、SLD进行服务注册,当PI的配置需要传输时,必须在SLD注册,否则可以是Local的
2、Product 1->* version 1->* Software Component Version *->1 Software Component
3、SC在SLD定义后可以导入到ESB中,并且在SC中定义Modeling,Namespace,也可以Import Objects, 在Namespace中定义Integration Scenario & Processes, Interface Objects, Mapping Objects, Adapter Objects.
4、在ABAP环境中输入Tcode: SXMB_IFR,打开SLD配置界面
5、对于ERP中应用的Business System定义,一定要配置Logical System Name
6、ERP系统需要在SLD中激活Data Suplliers并且用RZ70注册
7、如果SLD创建新的Business system不存在,请在Web Start界面选择Enviroment->Clear SLD Data Cache,就可以查询到
8、通过定义Transport Targets, 可以实现IB对象的传输
9、Business System *->1 Technical System 1->* Product
10、一般来说对于对于Third Party System只有一个BS,但是ERP可以按照Client对应有多个BS
三、Pipleline工作原理
1、Runtime Procedure:BS_A->XML Validation->Receiver Determination->Interface Determination->Message Split->Mapping->Technical Routing->Call Adapter->BS_B
2、IS运行中基于Message Queue, SMQ1和SMQ2来查询队列
3、SXI_MONITOR管理Message传输状态,但要有ABAP Engine的情况下
4、Pipeline的每一个Step中的消息包括SOAP-Header, SOAP-Body, Payloads, 其中Payloads是传输的Value信息
5、消息发送接收过程:Sender using an adapter-> Adapter Engine->ICM(http://<IS Host>:<ICM Port>/sap/xi/engine?type=entry) ->Pipeline,ABAP Proxy, JAVA Proxy会直接将数据发送到ICM(Internet Communication Manater),IDoc因为本身就是SI, 所以可以绕开ICM,而其他Sender都要发送到Adapter Engine
6、synchronous and asynchronous处理方式的区别
7、Qos(Quality of Service)的EO,EOIO的区别
8、Acknowledgements是技术性的系统连接应答,在SXMB_ADM的Runtime分类中可以定义
9、ABAP Proxy的连接需要选择XI3.0的Adapter类型
10、Sender Channel->Sender Agreement (Sender BS and Sender SI)-:>Receiver Determination(Base Sender BS and Sender SI get Receiver BS)->Interface Determination(Base Sender BS, Sender SI, Receiver BS get Receiver SI)->Receiver Agreement(Base Sender BS, Receiver BS and Receiver SI get Receiver Agreement)->Receiver Channel
11、acknowledgements(ack),部分的Adapter是支持acknowledge,分成tech ack.和appl ack两种,tech ack是指PI发给接收系统成功就是tech ack成功了,而appl ack是业务逻辑处理完毕后成功
四、管理与监控
1、Runtime Workbench可以划分为Component Monitoring, Message Monitoring, End-to-End Monitoring
2、当映射出现错误时可以采用Alert Configuration,发送邮件、短信等方式提醒,Tcode: ALRTCATDEF
3、NWA的管理角色:NWA_READONLY, NWA_SUPERADMIN
4、PI的NWA需要安装CCMSPING,然后注册,访问地址http://<host>:<port>/nwapi,ABAP角色SAP_NWA_FULL, SAP_NWA_READONLY
五、Connectivity
1、ABAP Proxy,Java Proxy是将本地通讯消息格式转换成PI的消息格式
2、AAE(Advanced Adapter Engine)是基于J2EE的适配器管理组
3、ABAP Proxy采用SPROXY事务码创建
4、Http Adapter和SOAP Adapter,其中Http Adapter地址sap/xi/adapter_plain;e.g:http://iwdf:50080/sap/xi/adapter_plain?service=BS_BIT_00&namespace=urn%3Asap-ag%2EEcom&interface=O_msgIF_BIT_00&qos=EO; SOAP Adapter需要创建CC才能使用
5、IDoc Adapter是基于ABAP Stack, IDX1用来将IDoc转换成XML格式,管理Port,<SID><Client>,SXI_CACHE查看逻辑系统名是否分配,IDX2管理Metadata Cache,SXMB_ADM选择Category IDoc进行配置转换参数
6、File/FTP Adapter,File是通过在本地发送和存储文件,FTP是通过FTP服务
7、AAE(Java的)性能上有提升,更少的步骤(因为不通过ABAP Engine),但是也有一些限制,与ABAP相关的用不了。
六、BPM
1、BPM是对于Stateful Message的情况下处理的一种方式,比较类似于Workflow,是跨组件的BPM,ccBPM
2、由于ccBPM是有Stateful的,所以可以实现异步接口与同步接口的连接
3、Integration Process在ESB中定义
4、Tcode:sxmb_moni_bpe专门用来监控Integration Process的情况