SAP PI功能说明书

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SAPPI
功能介绍
北京泽佳科益科技有限公司
2010年 03月 26日
商业机密妥善保管
目录
第一章:SAP- PI功能概述 ... ............................................................................................................................. (3)
1.1 PI 简介... ............................................................... .. 3
1.2 PI 功能详解 ... ...................................................... (3)
第二章:用于 POC项目的方案 ... .................................................................................................................... . 8
2.1 本次 POC 的项目概述 ... ................................................. (8)
2.2 SAP PI 接口管理机制 ... .................................................. .. 8
2.2.1 PI 接口管理概述 ... ..................................................... . 8
2.2.2 PI 接口管理机制详述... ................................................ (9)
2.2.2.1 接口修改 ................................................................... . 9
2.2.2.2 接口删除 ................................................................... . 9
2.2.2.3 接口搜索 ................................................................ (10)
2.2.2.4 接口结构转换 ... ........................................................ .. 10
2.2.2.5 应用举例 ................................................................ (10)
2.2.3 POC 项目中的开发标准 ... ............................................... . 11
2.2.4 SAP PI 接口管理的优势 ... ............................................ (12)
2.2.5 SAP PI 异常情况处理 ... ............................................... .. 13
2.3 SAP PI 纠错及监控 ... .................................................. (14)
2.3.1 PI 纠错监控 ................................................................ .. 14
2.3.1 PI 消息监控步骤 ... ......................................................... . 18
2.4 SAP PI 重发机制 ... ..................................................... .. 28
2.5 SAP PI 宕机恢复说明 ... .................................................. . 32
2.6 SAP PI 数据包丢失或增加处理方法 ... ...................................... . 32
第一章:SAP- PI功能概述
1.1 PI 简介
SAP Exchange Infrastructure (PI) 是为了建立一个完整的针对整个企业信息系统的数据交换平台,加强企业管理、优化业务流程、使企业的各个系统协同工作。

通过 PI 提供集中管理、集中监控和集中处理功能,优化业务流程,提高系统整合稳定性,使企业的各个系统真正做到多位一体、协同工作。

PI 以通过一个统一的平台将很多不同的系统的客户和业务信息集成起来。

它可以通过单一的用户界面在多个旧系统甚至现有的 CRM 系统中进行通信和更新。

这就意味着 PI 可以用在中央客户信息和处理解决方案中,而节省巨额的数据传输和存储费用。

无需在各套系统中维护大量的系统和系统直接的关系,与所有系统无缝集成,使用这
样标准的流程,减少了由于自己开发而造成的程序不稳定。

1.2 PI功能详解
PI 主要能给企业带来两方面的突出优势:首先是解决了企业 IT 基础架构的复杂性难题,其次,降低了 TCO, 能够让企业充分利用现有组件,把 SAP 提供的组件与第三方供应商提供的组件无缝的集成在一起,对企业的投资起到了保护作用。

这些突出优势只要是通过以下功能实现的:
SAP 和非 SAP 组件的集成
现在随着企业业务的增长,很多业务部门为了需求各自实施了针对自己部门流程的特定的一些应用系统。

致使整个企业的 IT 系统布局越来越复杂。

比如说,有一个大型企业,上了很多套系统,象 CRM, SCM 等等,而且它不同的区域的 SAP 系统是为各自的区域服务的,中国的 SAP 系统是覆盖中国,海外的只覆盖海外的业务,更复杂的是,也许
FI 用的是 SAP 的,但是 HR 用的 People soft 的,当然还有和许多供应商之间,商业伙伴之间进行交互的电子商务系统。

为了让业务部门与业务部门之间,公司与业务伙伴和供应商之间进行直接相互通信,就要开发很多的接口,这就意味着系统越多,接口数目也大幅度增长,工作量越来越大。

而且这种点对点的集成方式还会给系统组件的增加,系统架构的修改和扩展带来很多难题。

而 PI 可以把多个业务系统统一连接到一个独立的协作中心,形成一个共享集中式的信息中心,从图中看 PI 像一个控制各应用系统间交换信息和数据的总控台。

当两个甚至更多的应用需要互相通信的时候,PI 提供了一个适配器框架,这些适配器将帮助信息从一种格式转换为另一种或多种格式(如 XML,HTTP 和 SOAP 等)。

使用 PI,信息将安全可靠地在不同的系统间高速传递,而且用户可以重复的使用一个系统的接口,不需要重复编写程序,当用户改变了其中的一个系统时,用户仅需在 PI 上进行修改。

PI 能够帮助企业集成 SAP 和非 SAP 的异构应用。

首先利用 PI 的消息代理,可以集成运行在 sap web 应用服务器上的所用应用,而不需要再采用另外的适配器。

当需要和一些特殊异构系统集成时,用户可以通过采用 sap 或者经过认证的合作伙伴提供的适当适配器来进行连接。

PI 及其平台的适配器框架,实际上能够让您与任何应用或系统集成到一起,包括封装的应用以及需要特别协议的应用。

用适配器进行附加连接
PI 的适配器框架可运行在 PI 的中央适配器引擎上。

它提供排队等候和安全处理功能。

他与资源适配器连接,并通过合作伙伴连接套件,允许没有安装 SAP PI 的商业伙伴接受和发送消息。

SAP PI 的中央适配器引擎是基于 sap web as 上的 j2ee 引擎,她可以对所有的适配器进行中央配置和监控。

预封装的集成内容
同时 SAP PI 还提供预先配置的宝贵的商业内容。

这些预先配置的商业内容还包括预开发的用于各种后端系统集成的接口和技术适配器等等,这些接口和适配器的详细解释我们会在后面提到。

A2A 和 B2B 支持
PI 在他的集成目录中存储企业合作伙伴的档案,能够让企业根据这些数据与合作伙伴进行通信。

不过这样还有一个问题,就是有的合作伙伴规模比较小,他们可能没有足够的资金去实施 B2B,SAP 就提供一种比较便宜的解决方案,这就是合作伙伴连通工具包,他的价格相当的优惠,小贸易伙伴可以采用这个工具包和 SAP PI 进行信息传递,实现 B2B。

跨组件业务流程管理(BPM)
BPM 通过系统及各类应用对自动业务流程进行设计、执行和监控;通过集中的技术平台对业
务流程进行控制,包括图形化的各类模板。

与 PI 完全集成,模板可与 PI 中的各类设计主体相链接:如interfaces, mapping 等等。

BPM 运行环境完全执行行业标准,支持行业标准(BPEL4WS),输入/输出流程定义;在技术流程监控中,PI 可以和的通用技术监控集成
(CCMS),支持流程监控图形化显示。

第二章:用于 POC项目的方案
2.1本次 POC的项目概述
目前,电信的 MSS 中有除 SAP 系统之外的其它供应商辅助系统,为了让业务部门与业务部
门之间,直接相互通信,就要开发很多的接口,这就意味着系统越多,接口数目也大幅度增长,
工作量越来越大。

而且这种点对点的集成方式还会给系统组件的增加,系统架构的修改和扩展
带来很多难题。

本次POC的目的就是通过SAP的PI为信息总线,把 SAP ECC6.0 中的业务与周围的辅助系统,例如财务辅助、工程辅助、综合审批平台等异构系统集成。

2.2 SAP PI接口管理机制
2.2.1 PI接口管理概述
PI 基于系统全景目录(SLD)使用集成构建器(Integration Builder)对接口进行集中管理,首先要在 SLD 中针对不同场景建立相应的软件组件(Software Component 简称 SWC)一般情况要最少建立3 个SWC,以当前集成方案为例:SAP 系统与非SAP 系统的接口结构定需要分别在SLD 中建立SWC,SAP 系统与非SAP 系统之间的映射关系的开发单独在SLD 中建立SWC,然后在不同的 SWC 中为各个系统单独建立唯一的域名空间,在相应的域名空间中进行接口的结构定义或映射关系的开发。

PI 接口开发是在资源集成库(IR)中进行,定义的的方式自由度很高,可以根据原有的Legacy systems 导入结构,也可以自定义开发,主要由以下几方面组成,对 RFC,BAPI,IDOC 等 SAP 接口 PI 系统可以无缝读取并自动转化为 XML 格式在 PI 中生成接口,也可以通过 IR 中的设计器来开发,在由 SAP 系统无缝读取作为程序参数来用,对非 SAP 系统接口的定义可以
通过导入 DTD,XSD,WSLD 文件等方式定义,也可以通过 IR 中的设计器来开发,PI 的接口设计器直观,简单易用,可以理解为对 XML 格式的可视化操作,当前电信的接口设计方案中因为非 SAP 系统的结构复杂,有自己的特殊性,一个接口包含多个业务结构,所以对非 SAP 系统的接口设计采用手工编写 WSLD 格式文件导入到 PI 的资源集成库中,这种方式开发灵活,自由度高,可以有针对性的对复杂的接口设计,但是需要维护人员对 WSLD,XML,XSD 有一定的了解,也可以使用设计器来开发接口,开发简单易上手,但对熟悉 WSLD 开发的顾问不如直接编写文件效率高,对 SAP 系统的接口采用设计器来开发,因为 SAP 系统和 XI 系统可以无缝读取结构,而且每个接口针对性强,针对独立的业务,结构相对简单,使用设计器开发效率会更高
PI 接口结构的复用性与通用性可以使开发效率更高,在新的业务场景中的接口可能与旧业务场景的接口完全相同或者类似,如果接口结构完全相同侧只需要把旧的接口结构引用过来,不需要在进行任何开发,可以做到一次开发永久受益,如果新的接口与原有接口的结构基本一样只有少许差别,则可以把原有接口复制一份过来,进行简单的修改,使开发周期大幅度的缩短,如果新的接口包含原有接口结构,又增加了一些自己的业务字段,则可以定义一个通用接口,每次在此接口上进行增强开发,原有接口不受任何影响也不会有任何改动,同样也可以缩短开发周期,例如:在电信系统中 SAP 系统返回的状态接口结构复用在每个接口当中,并不是对每个接口都对返回状态结构从新定义开发。

2.2.2 PI 接口管理机制详述
2.2.2.1接口修改
PI 接口的修改只需要通过设计器在开发界面中增加或者减少接口字段,然后在调整一下
映射关系就可以完成,操作简单,出错率小,不需要任何的程序开发,也可以通过修改
DTD,XSD,WSLD 文件进行修改,在不同情况下采用不同的方式,有很高的灵活度,例如:在现在的电信系统中如果工辅实际发生额接口业务逻辑改变,导致接口字段发生变化,则只需要在提供给工辅的 WSDL 文件中把变化的字段加上或者删除,然后在导入进来就可以。

2.2.2.2接口删除
PI 接口的删除只需要通过鼠标右键点击要删除的接口,然后选择删除,再删除掉相应的
映射关系就可以完成,如果用户删除了不该删除的接口,可以在激活界面中放弃激活,这样该
接口可以直接被还原,有效的防止了误操作情况的发生
2.2.2.3接口搜索
当业务场景的逐渐增多,接口的数量也越来越大,PI 提供了接口搜索功能,在 Search 输
入框中输入想要查找的接口,如知道接口全称可以直接输入,如只知道接口部分名称则可以用*号代替,因为接口复用性的存在,一个接口可能多次被引用,如想知道当前接口在哪些地方被使用,可以直接点击“搜索当前接口被使用的地方”功能键搜索,在右边窗口中会把所有引到用当前接口的地方全部罗列出来。

2.2.2.4接口结构转换
PI 结构转换开发也非常自由,根据客户的需求采用不同的方式,可以简单的进行可视化
开发,在开发中可以使用PI 自带的各种功能函数来满足客户的不同需求,如某些特殊情况PI 还提供通过编写 JAVA 程序进行开发,自由度非常高,在方案设计比较完善的情况下,一般只需要进行可视化开发,用系统自带的功能函数配合,这样不仅开发周期短,维护容易,对性能的提升也有很大好处,例如:在现在的电信系统中所有结构转换程序都是通过可视化开发来完成的,根据业务需要使用了相应的功能函数,仅需要用鼠标进行拖拽的操作就能完成,实施和维护都很简单。

2.2.2.5应用举例
下图给出 IR 中各个部分的说明:
在SLD中定义
的软件组件
接口详细描述
命名空间
for
发送系统接口接口的定义
发送系统消息结
从SAP系统导入结构对象
接收系统接口
结构转换程序
接收系统消息
下图是结构转换开发的界面:
2.2.3 POC项目中的开发标准
当前项目场景是由 SAP ECC 系统、工辅、财辅系统组成,以 PI 为总线进行数据传输,工辅系统所有接口为同步接口,财辅系统除供应商主数据是异步接口,其他接口为同步接口。

1.实时性高需要及时反馈的业务调用,规定采用同步接口实现,PI 提供 WSDL 文件给辅
助系统调用。

2.实时性不高,不是实时展现的业务调用,规定采用异步接口实现,PI 提供 WSDL 文件
给辅助系统调用,因为是异步反馈辅助系统需要作为 Server 端提供 WSDL 文件给
PI。

3.主数据同步,一旦 SAP 系统有主数据变更,立刻发送异步消息给相应的辅助系统,对
所有辅助系统实时同步,辅助系统需要作为 Server 端提供 WSDL 文件给 PI,辅助系
统也可以发送请求一次性获取全部主数据,PI 提供 WSDL 文件给辅助系统调用,辅助
系统同时提供 WSDL 文件给 PI。

PI 提供的 WSDL 文件是标准 WSDL 格式文件,适用所有客户端调用,辅助系统提供的 WSDL 文件需满足 JAX-RPC 或 JAX-WS 模式。

当前定义的业务模型如果返回信息没有业务数据,则把所有业务结构定义在一个消息
中,并使用同一反馈状态信息结构,通过 ACTION 参数区分调用何种业务,如果反馈信息包含业务信息则把当前业务结构定义为独立消息,并单独定义各自的反馈信息结构,请参看工辅结构定义的 WSDL 文件。

2.2.4 SAP PI接口管理的优势
1.扩展性,SAPPI 提供良好的扩展机制,能够通过简单的配置、少量的定制化,开始
和其它系统进行对接。

2.灵活性, SAPPI 可以通过灵活的配置改变接口的处理流程。

3.管理工具,SAPPI 提供良好的管理界面、管理工具对日后维护提供良好的支持。

4.数据跟踪,SAPPI 提供良好的工具进行信息跟踪、日志、审计、错误处理
5.可靠性,SAPPI 本身具有良好的软件架构,能够保证系统的稳定性、可靠性,保证
数据在交换过程中不被丢失。

6.数据处理能力,SAPPI 已经提供了良好的数据格式转换、数据路由、数据加密、身
份认证的功能
为何选择 SAP PI
特性优点
实现流程的全面业务集成
包含预先配置、可随时使用的交互式业务内容,可
可随时实现加快实施和投资回报
的集成为企业服务体系结构奠定技术基础,该蓝图利用 SAP
业务在业务应用方面 30 多年的丰富经验,同时利用灵活
的 Web 业务和关键的开放技术
全面基于开放技术和标准
开放而且可
集成您现有的 IT 设施,从而使您可以从目前已部署
扩展
的系统中获取更高价值和更多信息
减少集成IT 系统所需的连接数量,从而以更低的成本
实现集成
以最低的总投资成本支持关键应用的整个软件生命
周期
更低的 TCO
作为技术基础来支持所有 SAP 解决方案和部分合作
伙伴解决方案
2.2.5 SAP PI异常情况处理
由于一些不可预知的问题导致服务器宕机、异常等情况的发生,但这时候消息已经发送到PI 系统中,在重启服务后消息的处理机制有以下几点。

1.异步消息:
➢消息在适配器引擎中:服务器重启后可以人为干预由PI重新发送消息,不需要重新调度业务发送
➢消息在集成引擎中:服务器重启后可以人为干预由PI重新发送消息,也可以设置任务自动发送消息,不需要重新调度业务发送,
2.同步消息:
➢消息在适配器引擎中:不能由PI重新发送,需要由业务端重新发送
➢消息在集成引擎中:不能由 PI重新发送,需要由业务端重新发送
3.处理机制
➢异步消息:应用系统一旦把消息成功发送到 PI就代表这个业务操作已经结束,应用系统的操作已经完成,由系统问题导致的错误已经和外围系统没有关系,所以
不需要重新发送
➢同步消息:应用系统发送消息同时在等待反馈信息,一旦系统出现问题应用系统也会立刻得到一个错误的反馈消息,相当于调用失败,业务没有正常完成,需要
应用系统再次进行调用。

2.3 SAP PI纠错及监控
2.3.1 PI 纠错监控
消息处理监控
消息处理监控是在 SAPGUI 中完成,是 PI 系统正确收到消息后,是监控对消息进行分发,结构转换等操作处理的状态,进入监控界面 TCODE:SXI_MONITOR,如下图:
通讯状态监控
通讯状态监控是通过 Runtime Workbench 完成,需要在浏览器中完成,主要是看消息在与应用系统通讯传输的时候的消息状态,如下图:
业务数据错误监控
消息会显示传输正常,在 Monitor 中会看到黑白旗,如下图:
具体日志和业务数据可以双击消息看到,如下图:
摘要信息
执行步骤
及日志标
业务数据返回的内容可以在 Reponse 中看到,如下图:
总结:一般情况下,有返回业务数据的消息又两边业务系统负责核查,在感觉两边数据不一致的时候,再从 PI 系统确认发送和请求数据
系统错误监控
⏹同步消息监控
同步消息出现系统错误,发送系统也会得到反馈,但反馈结果只是系统错误,并没有
错误原因,所以需要在 PI 中监控,消息显示为红色圆点,报错如下图:
错误原因可以在日志中看到:
⏹异步消息监控
异步消息出现系统错误,接收系统不会收到消息,只能在 PI 中监控,报错消息的状态为红色旗帜,如下图:
错误原因可以在日志中看到:
应用错误监控
⏹同步消息监控
同步应用错误消息,发送系统可以收到反馈,但反馈结果一样是系统错误,并没有错
误原因,需要在 PI 中监控,错误消息标志位红色小点,报错如下图:
错误原因可以在日志中看到:
⏹异步消息监控
异步应用错误消息,接收系统收到消息但是处理失败,PI 中显示传输正确,这种情况不太好处理,一般需要接收系统开发程序把收到的消息记录到相应的数据表中,并记录处理状态。

PI 中不会有错误消息出现,显示为黑白棋:
通讯错误监控
通讯错误是在消息处理成功后发送给应用系统的时候产生的联通性错误,一般是在接收到应用系统的消息,并处理正确,但接收系统并没有收到消息,首先要检查通讯状态,是否发送成功,同步消息可以在 SAPGUI 中的 Monitor 反映出来,异步消息在 SAPGUI 中的 Monitor 显示为处理正确,需要通过 Runtime Workbench 监控,如下图:
总结
以上监控
同步消息:不管出现什么问题,发送系统都会收到反馈消息,除了业务上的错误,其他错误都可以通过 PI 中监控,在 SAPGUI 中没有监控到错误消息数据肯定全部传输成功,除非没有收到发送系统发出的消息。

如果发送系统和接收系统数据不一致,但 PI 系统没有错误消息,则可以在 PI 中按照一定的时间区间,以一个标准查询消息,例:消息 ID。

异步消息:需要在 SAPGUI 中检查消息处理的状态和 Runtime Workbench 中检查消息通讯状态,如果没有错误状态则表示所有消息已正确传输,如果出现数据不一致现象,首先应该在接收系统查找问题,如果接收系统无法确认,则可以在 PI 中按照一定的时间区间,以一个标准查询消息,例:消息 ID。

2.3.1 PI消息监控步骤
运行时工作台监控
组件监控
访问 http://host:5xx00/rwb,然后选择 Component Monitor 进入 Component 监控界面,
监控其状态.
通讯管道监控
通讯管道是每种适配器在运行时的具体实现,在消息传输过程中,如果需要通过适配器引擎处理,则会根据不同的传输协议通过通讯管道组件与应用系统连接先进入 Component Monitor,再选择 Communication Channel Monitoring 按钮,可进入
Communication Channel 监控界面,对 Channel状态进行监控或改变(Stop/start)
点击 Use Filter 查看所选择的 Channel 状态
适配器监控
访问 Http://Host:5xx00/mdt/index.jsp,可以进入 Adapter Monitor 界面,监控 Adapter 上消息处理状态及队列情况.
消息监控
选择 Message Monitoring 菜单,可进入 Message 信息查询界面,根据各种查询条件,查询Integration Engine 或 Adapter Engine 上处理的消息记录.
Integration Engine:
Adapter Engine:
性能监控
选择 Performance 菜单,可进入 Performance 信息查询界面,查询一定时间段内,消息处理的性能状况.
订阅信息
在 PI 中可以设置邮件服务器,根据不同业务需求,可以发布一些可订阅的服务,用户可
以订阅与自己相关的服务,然后通过邮件的方式发送给用户选择Alert Inbox 菜单,可进入Alert Inbox 界面,查看,确认用户自己的 Alert 信息
缓冲区监控
在系统运行时为了保证消息处理效率,因此所有开发的程序和所作的配置都会放在缓冲
区中,运行时系统直接读取缓冲区的内容进行消息处理。

选择 Cache Monitor 菜单,可进入 Cache Monitor 界面,对各种 Cache 查询监控.
消息处理引擎监控
消息处理引擎监控共有如下功能:
消息处理引擎监控
执行 SXMB_MONI,可进入 Integration Engine Monitoring 功能选择界面.
消息监控
执行 SXI_MONITOR 可进入 Message 查询界面,按下图条件,对经过 Integration Engine 处理的消息进行查询
执行查询(F8)后,可进入查询结果列表: 双击具体消息行,可看消息内容:
流程引擎监控
执行 SXMB_MONI_BPE,可按 Process/MessageType/Missed Deadline/Errors 等条件查询Process 状态.
IDOC 监控
执行 Tcode:IDX5,可按日期、时间、MessageID、Transaction ID、IDOC Information 对经过 XI IDOC Adapter 的信息进行过滤选择。

执行查询(F8)后,可查询 Adapter 处理过的消息
双击消息行,可转至 Message Monitor 看具体消息内容
缓冲区监控
执行 Tcode SXI_Cache 可进入 Cache 管理更新界面,对 PI Cache 进行察看,更新等.
2.4 SAP PI重发机制
本次测试是用供应商实时同步场景测试,由 ECC 系统发送供应商主数据到 PI 系统,PI 系统对消息进行处理分发,在发送给财辅系统,因为是测试 PI 的消息重发机制,所以在测试过程中以 PI 接收到消息为基础在进行,模拟各种错误出现的情况(例如:系统运行时 JCO 连接错误,缓存更新错误,结构转换错误,接收系统配置错误等),分析不同情况下的错误如何处理。

消息在 PI 处理中同步消息没有重发机制,一旦出错立刻返回给应用系统,在分析出错误原因并改正后,由应用系统进行重新发送,异步消息出错可以由 PI 系统完成重发操作,如果不是业务问题不用应用系统再次发送,消息在 PI 中重发分为自动重发和手工重发两种。

以下是根据当前测试场景模拟各种错误类型对两种重发机制的测试。

自动重发:
消息处理引擎:
在消息处理中,遇到系统异常情况比如 JCO 连接失败、系统在更新 CACHE 等情况,消息
会自动重新发送,发送间隔 2 分钟,重发次数 10 次,一旦超过 10 次仍没有发送成功,消息被标记为红色旗帜,移出队列(重发次数可调整)
重发过多转为系统错误,需要人为对错误进行处理再重发消息
通讯适配器引擎:
消息在通讯处理中出错会变为“Waiting”状态,系统最多自动重发 3 次,间隔 5 分钟(重发次数和间隔可设置)
手工重发:
消息处理引擎:
当消息在处理中遇到配置上的错误(例如:结构转换失败,接收系统未定义,接收接口未
定义等等)或者自动重发超过限制时,消息不会自动重发,状态会变为红色旗帜,只能又人为进行手工重发,也可以设置定时任务来定时重发消息
错误修改正确后变为黑白旗,表示消息处理成功:
通讯适配器引擎:
当消息在通讯处理中出现错误,重发超过设定范围后变为“System Error”根据错误
日志调整后,由人为重发消息。

处理成功后状态会变为“Successful”。

相关文档
最新文档