SAP PI – 快速指南
SAP PI – 快速指南
SAP PI – 简介
SAP Process Integration 是 SAP NetWeaver 平台的一部分。它在 NetWeaver 7.0 ehp2 及更早版本中称为 SAP NetWeaver Exchange Infrastructure XI。SAP NetWeaver Process Integration 是 NetWeaver 软件组件的一部分,用于在公司内部系统中或与外部各方交换信息。
SAP PI/XI 使您能够设置跨系统通信和集成,并允许您连接基于不同编程语言(如 Java 和 SAP ABAP)的 SAP 和非 SAP 系统。它提供了一个在复杂系统环境中对于系统集成和通信必不可少的开源环境。
SAP Process Integration 是一种中间件,允许在公司内的 SAP 和非 SAP 应用程序之间或与公司外的系统之间进行无缝集成。
例子
在属于公司不同业务部门的不同系统上运行的应用程序,或在彼此具有业务关系的不同公司之间的分布式环境中实施的应用程序。在这种环境下,需要在不同系统之间进行无缝集成和信息传输。SAP PI 提供了一个中间件平台,该平台不处理应用程序组件如何通过业务逻辑实现,而是更多地关注不同组件之间的数据交换。
您可以将 SAP PI 视为互连不同系统的中央实例或中间件。该中间件可以称为 SAP PI 运行时引擎,这种通信称为中介通信。当您将此通信与点对点方案进行比较时,管理系统和连接很容易。除此之外,还可以在一个中心点获得与集成相关的信息。
使用 SAP PI 的不同系统之间的消息交换包含业务数据。通信消息协议基于 W3C 标准 SOAP 消息。
为什么我们需要 SAP PI?
在组织中,SAP ERP 不包含单个系统,而是由多个集成系统组成,如 SAP CRM、FICO、EWM 等。 SAP PI 为所有系统提供了一个作为单点集成的平台,而无需触及复杂的遗留系统所有数据和信息交换。
以下是 SAP Process Integration 提供的关键功能 –
连通性
使用 SAP PI,您可以连接具有不同技术通信方式的不同应用程序和系统。SAP PI 为您提供了多种适配器,允许您连接基于不同协议(如 HTTPS 或远程函数调用 (RFC))的应用程序。
路由
路由定义了运行时不同系统之间消息流的规则。
映射
SAP PI 用于在分布式环境中连接不同的应用程序或系统,可以设置在不同的公司之间,因此两个组件之间的数据交换结构可能彼此不同。
映射确定源系统中的数据结构到目标系统中的数据结构。它还确定应用于源系统和目标系统之间数据的转换规则。
SAP PI – 安装选项
在 SAP PI 中运行场景时,通信和处理功能取决于随 SAP PI 安装一起安装的运行时引擎。您可以在主机系统上安装一个或多个运行时引擎。SAP PI 提供以下两个安装选项 –
类型 1 — 双重用途类型
此安装基于 ABAP 和 Java,并提供用于设计和配置集成内容以及这些运行时引擎的工具 –
- 集成引擎
- 业务流程引擎
- 高级适配器引擎
类型 2 — 高级适配器引擎扩展 AEX
此安装基于 Java 并提供用于设计和配置集成内容的工具,并包含高级适配器引擎作为运行时引擎。
SAP PI – Netweaver PI 架构
SAP PI 体系结构由在设计时、配置时和运行时使用的多个组件组成。在 SAP PI 中,发送方系统称为源系统,接收方系统称为目标系统,架构称为Hub 和 Spoke 结构。Spoke 用于连接外部系统,Hub 用于交换消息。
SAP PI 系统分为以下组件–
- 集成服务器
- 集成生成器
- 系统景观目录 SLD
- 配置和监控
运行时工作台
这是一种用于提供对 PI 组件和消息的集中监控的工具。
集成服务器
这是 SAP PI 系统的关键组件之一,用于处理消息。
它由以下三个引擎组成 –
- 业务流程引擎
- 集成引擎
- 中央高级适配器引擎 AAE
业务流程引擎
该引擎用于消息关联并处理 ccBPM 中的消息处理。
集成引擎
该引擎用于路由和映射,并提供中央集成服务器服务。如果源结构与目标结构不同,集成引擎将调用映射运行时,如下图所示,其中源结构转换为目标结构。
映射运行时基于 Java 堆栈,如 SAP PI 平台主题下所述。
消息可以是以下两种类型 –
-
同步消息定义为消息同时包含请求-响应部分
-
异步消息被定义为消息只包含请求或响应部分
在 SAP PI 中,消息由接口表示。接口包含 XML 格式的消息结构和方向。
中央高级适配器引擎 (AAE)
由于集成引擎处理 XML 和 SOAP 协议中的消息,如果业务系统不包含特定格式的数据,则使用适配器来转换集成引擎所需的消息特定协议和消息格式。
在SAP PI架构中,您可以将Adapter Engine视为Spoke,将Integration Engine视为HUB来连接外部系统。
在 SAP PI 旧版本的双栈系统中,大多数适配器是 Java 栈的一部分,只有两个适配器是 ABAP 栈的一部分。
Java 堆栈适配器
以下适配器在 Java Stack 上运行 –
RFC 适配器、SAP 业务连接器适配器、文件/FTP 适配器、JDBC 适配器、JMS 适配器、SOAP 适配器、市场适配器、邮件适配器、RNIF 适配器、CIDX 适配器
ABAP 堆栈适配器
以下适配器在 ABAP 堆栈上运行 –
Sr.No | ABAP 堆栈适配器和说明 |
---|---|
1 |
IDOC and HTTP Adapter 在 SAP PI 迁移到单栈系统的最新版本中,这两个适配器也迁移到了 Java 栈,由此形成的新引擎称为 Advanced Adapter Engine AAE。 |
2 |
Service Repository 服务注册中心是一个 UDDI 投诉注册中心,列出了可用的 Web 服务定义(基于 WSDL),并通过分类系统进行了扩展。 |
3 |
Enterprise Service Repository 这用于在 PI 系统中存储设计时存储库对象,如映射、接口和流程定义。 |
4 |
System Landscape Directory (SLD) 这包含有关横向和软件组件版本的信息。SAP 系统可以配置为在 SLD 下注册。 |
5 |
Integration Repository 这用于配置 PI 系统中的场景,以便在不同系统之间交换消息。 |
SAP PI – 用户界面工具
您可以使用不同的 SAP PI 用户界面工具来访问 SAP PI 系统架构的不同组件。最常见的 UI 工具是 –
-
ES Builder – 此工具提供用于在企业服务存储库 ESR 中工作的 Java 用户界面。
-
SAP NW Developer Studio – 这是基于 Java Eclipse 的工具,用于查看和编辑 Enterprise Service Repository 中的某些对象类型。
-
Integration Builder – 此工具提供基于 Java 的用户界面以在集成目录中工作。
图形用户界面
这是用于访问 SAP PI 系统的 ABAP 堆栈的 SAP 客户端工具。
下图显示了 SAP PI 的不同 UI 工具以及可以使用这些工具访问的组件 –
SAP PI — 平台
单栈与双栈
在 SAP PI 旧版本中,并非所有组件都基于单个平台。集成引擎、业务流程引擎和集成构建器等很少有组件基于 ABAP 堆栈,而企业服务存储库 ESR、集成目录(SLD、适配器引擎等)等其他组件基于 Java 堆栈。所以这些类型的系统被称为双栈系统,因为 PI 需要 ABAP 和 Java 栈才能运行。
ABAP Stack | Java堆栈 |
---|---|
Integration Engine | 企业服务存储库 ESR |
Business Process Engine | 集成目录 |
Integration Builder | (运行时工作台、系统架构、适配器引擎、映射运行时) |
在最新版本的 SAP PI 中,ABAP 堆栈组件被修改为在 Java 堆栈上工作,因此 SAP PI 只需要 Java 堆栈即可运行,称为单堆栈系统。
SAP PI – 主页
要打开 SAP PI Tools 主页,请使用以下 URL –
http://<host>:5<instance#>00/dir/start/index.jsp
示例– http://scmehp2:50200/dir/start/index.jsp
SAP PI 主页有以下四个 Java 链接 –
- 企业服务存储库 (ESR)
- 集成目录 (ID)
- 系统景观 (SL)
- 配置和监控 (CM)
企业服务存储库 (ESR)
在 SAP PI 中,Enterprise Service Repository 用于设计和创建要在集成场景中使用的对象。您可以设计接口对象、映射对象和不同的集成过程。
接口对象
以下是接口对象 –
- 服务接口
- 数据类型
- 消息类型
映射对象
消息的映射是根据发送方和接收方的数据结构完成的
集成流程
如果数据结构不同,则操作映射用于将源结构转换为目标结构。使用消息映射可以简化复杂的操作映射。
消息映射可以通过以下方式实现 –
- 图形映射
- Java映射
- XSLT 映射
- ABAP映射
在 Enterprise Service Repository 下,您可以看到不同的 UI 工具 — Enterprise Service Builder 和 Web UI 和 Service Registry。
当您启动 Enterprise Service ES Builder 应用程序时,您将获得第一次运行该应用程序的选项,如下面的屏幕截图所示。单击运行。
应用程序启动后,您将获得以下选项 –
- 顶部的主菜单栏和标准工具栏
- 左侧导航区
- 右侧工作区
对象编辑器显示在工作区中。这些对象编辑器包括与打开的对象特别相关的功能。
当您运行 Web UI 时,系统会提示您输入用户名和密码。
在基于 Web 的界面中,您可以执行以下任务 –
-
搜索– 搜索服务接口、数据类型等。
-
订阅– 订阅通知。
-
管理– 管理服务接口、数据类型等的生命周期状态。
集成目录
集成目录用于配置在 Enterprise Service Repository 中创建的对象,并且配置由集成引擎在运行时执行。要配置 ESR 对象,您需要导入对象 — Service and Communication Channel。
服务允许您寻址消息的发送者或接收者。根据您希望如何使用该服务,您可以从以下服务类型中进行选择 –
- 业务系统
- 商业服务
- 集成流程服务
通信通道通过使用适配器引擎将外部本机消息转换为 SOAP XML 格式来确定消息的入站和出站处理。两种类型的通信通道——发送方通道和接收方通道。
在集成目录中,您可以进行四种类型的配置 –
-
发件人协议– 这决定了集成服务器如何转换消息。
-
Receiver Determination – 这用于确定要向其发送消息的接收者的信息。
-
接口确定– 这用于确定消息要发送到的入站接口。这也决定了处理消息的接口映射。
-
接收方协议– 这定义了接收方如何转换和处理消息。
在集成目录下,您可以看到集成生成器。单击集成构建器时,您可以看到用于配置在 ESR 中创建的对象的不同选项。
SAP PI – 系统架构目录
系统架构目录包含有关架构和软件组件版本的信息。SAP 系统可以配置为在此目录下注册。系统架构目录 (SLD) 管理有关系统架构的所有可安装和已安装元素的信息。
您可以在网页中找到以下链接 –
风景
在横向下,您可以找到以下选项 –
-
技术系统– 您可以查看和定义系统和服务器。
-
Landscapes – 您可以查看和配置系统组。
-
业务系统– 您可以查看和配置用于流程集成的业务系统。
软件目录
-
产品– 这是查看 SAP 软件目录中的产品。
-
软件组件– 这是查看 SAP 软件目录中的软件组件。
发展
-
名称保留– 这用于名称保留和 NW 开发。
-
CIM 实例– 用于查看和维护 CIM 级别的数据。
配置和监控
SAP PI 工具主页上的配置和监控选项允许您监控 SAP 系统中的集成引擎、CCMS 集成和流程监控基础架构的功能。
使用配置和监控,您可以监控以下功能 –
-
组件监控– 监控 SAP PI 的不同 Java 和 ABAP 组件。
-
消息监控– 监控 SAP PI 组件中消息处理的状态。
-
性能监控– 使用运行时工作台,您可以监控 SAP PI 系统中的不同性能指标。您可以创建各种聚合报告。
-
End to End Monitoring – 监控 SAP PI 系统中场景的端到端生命周期。
-
消息索引搜索– 您可以在消息监控中执行基于索引的消息搜索,也可以根据特定于适配器的选择等进行搜索。
-
警报收件箱– 警报收件箱根据分配给业务用户的角色,用于根据配置查看 SAP PI 系统中的所有警报。
-
警报配置– C&M 中的警报框架允许您报告在 ABAP 和 Java 中处理消息期间的所有错误。使用警报配置,您可以定义策略,是否必须报告错误并执行分析。
-
监控运行时缓存– 用于查看运行时缓存中的对象。
让我们看看这些选项在 SAP PI 工具主页中的配置和监控下的位置。在配置和监控主页下,您会看到以下屏幕截图中的三个选项 –
监控选项卡
在“监控”选项卡下,您将获得 4 个选项,如下面的屏幕截图所示 –
-
消息概览– 用于获取特定时间段内消息处理的概览。消息按处理状态聚合。
-
警报收件箱– 用于处理由 SAP NetWeaver 流程集成引发的基于消息的未决警报。警报可以为您提供运行时信息和故障排除工具的链接,以促进更快地隔离问题。
-
使用 Trex 进行消息搜索– 这用于使用消息有效负载内容搜索消息。您需要搜索和分类引擎 TREX 来索引和搜索文档。此外,您已设置并激活消息索引。
-
组件监视器– 这用于深入了解 SAP NetWeaver Process Integration 的各个组件的健康状态。
配置和管理选项卡
在配置和管理选项卡下,您将获得 3 个选项,如下面的屏幕截图所示 –
-
消息索引 (Trex) – 这用于使用搜索和分类引擎 TREX 控制和监视基于索引的消息搜索的索引。
-
警报规则– 创建和管理警报规则。在警报规则中,您定义系统生成警报的运行时条件。
-
SLD 注册– 用于检查 SAP NetWeaver Process Integration 的组件在技术配置阶段是否正确注册。您可以对注册应用更正,也可以注册更多组件。
测试选项卡
在测试选项卡下,您将获得以下两个选项 –
发送测试消息
通过向集成引擎或高级适配器引擎发送测试消息来模拟消息流并验证 SAP NetWeaver Process Integration 运行时是否正常运行。
缓存连接测试
这用于检查 SAP NetWeaver Process Integration 的基础架构组件的缓存连接状态并测试它们与运行时缓存的连接。
SAP PI – 通信
在 SAP PI 中,您可以定义两种类型的通信 –同步和异步。
同步通讯
请求和响应操作调用同步通信,操作后立即返回进程输出。一般而言,您可以说同步场景是发送方进程向接收方发送请求并等待响应。如果接收方发生错误,则发送方应用程序负责重新发送消息。
在这种方法中,发送者可能会在超时后重新发送消息,并且可能存在重复的消息。PI 中的这种方法称为BE(Best Effort)。
考虑两个系统 – A和B。并且,您在两个系统之间引入了一个中间系统 I。系统 A 和系统 I 之间的通信是同步的,而系统 A 和系统 B 之间的通信是异步的。
在这种通信场景中可能会发生以下类型的错误 –
-
应用程序错误– 处理消息时接收端出现错误,发送方不知道此错误并一直等待回复。
-
网络级错误– 在此错误中,发送方和接收方之间的通信网络存在错误。发件人不知道这一点,消息卡在中间,发件人等待操作超时。
-
响应消息中的错误– 在这种情况下,发生错误并且响应消息卡在两者之间并且发件人继续等待。
好处
以下是使用同步通信的主要优势 –
-
无需配置响应消息路由。
-
无需将响应与请求相关联。
-
在此通信中,立即收到响应。
推荐场景
这适用于涉及读取操作的操作,例如查看采购订单。
缺点
以下是使用异步通信的主要缺点 –
-
如果失败,发送方需要再次发送消息。
-
该接收系统应当配置为检查重复的消息。
-
在这种情况下,发送方应用程序被阻止,直到收到响应或发生超时错误。
-
您不能配置多个接收器。
异步通信
在异步通信中,您可以在两个系统之间添加一个中间系统或中间件。当发送方应用程序发送请求时,它不会等待接收方应用程序发送响应。如果由于某种原因出现故障,中间件负责重新发送消息。如果需要,接收系统可以将响应作为单独的异步调用发送回 Sender。
SAP PI 中的这种方法称为Exactly Once (EO)或Exactly Once in Order (EOIO)。
中间系统是一个队列,来自 A 的消息首先添加到队列中,在接收端,它从队列中拉出并发送给接收者。来自系统 B 的响应消息遵循
您还可以根据业务需求使用先进先出 (FIFO) 在某些情况下维护订单。这种情况被称为异步顺序维护或完全按顺序 (EOIO)。
异步通信确保有保证的交付。如果接收器系统在一段时间内不可用,则中间队列会保留消息并保持在那里,直到接收器系统可用并将消息从队列中拉出并发送到接收器系统。
推荐场景
建议用于修改操作,例如创建采购订单或修改采购订单
好处
以下是异步通信的主要优势 –
-
如果出现故障,SAP PI 系统将确保有保证的交付并将重新发送消息。
-
重复检查不需要配置。
-
您可以在这种情况下配置多个接收器。
-
发送方系统和接收方系统不需要同时在线。
-
PI 记录所有通过异步通信发送的消息。
-
没有超时,因为中间系统会保留消息和响应请求。
缺点
以下是异步通信的主要缺点 –
-
在这种情况下,发送方需要自行将响应与请求相关联。
-
响应消息需要单独实现和路由。
-
它不提供立即响应。
SAP PI — 技术
SAP 提供了一个基于 NetWeaver 的中间件,称为 SAP NetWeaver Process Integration。SAP NetWeaver PI 以称为简单对象访问协议 (SOAP-HTTP) 的特定格式传送消息。此消息包含标头和有效负载。标头包含一般信息,例如发送方和接收方信息,有效载荷包含实际数据。
系统可以直接或使用适配器与 SAP NetWeaver PI 通信 –
- 使用应用程序适配器进行通信
- 使用技术适配器进行通信
- 使用行业标准适配器进行通信
- 使用事务适配器进行通信
- 使用代理直接通信
SAP PI – 保护对象
要将对象形式的信息从一个 Enterprise Service Repository 传输到另一个 Enterprise Service Repository,您可以从三种传输方式中进行选择 –
- 基于文件系统的传输
- 变更管理服务 (CMS)
- 变更和运输系统 (CTS)
该图显示了两个软件组件 — 版本 A 和版本 B,它们已从 ESRep_1 和 ESRep_2 转移到其他 ESRep。
传输级安全
传输级安全性包括通过网络传输时设计对象的安全性。在传输对象时,您在传输级别执行身份验证和加密,并在端点执行授权。对于内部通信,您使用安全套接字层 (SSL) 通过安全连接对数据进行加密和解密。对于 SAP 和非 SAP 系统之间的外部通信,加密类型取决于用于通信的适配器类型。
SAP PI 适配器和安全机制 –
Adapter | 协议 | 安全机制 |
---|---|---|
HTTP based Adapter | HTTP | HTTPS |
RFC based Adapter | RFC | 安全网络通讯 |
Mail Adapter | SMTP、IMAP4、POP3 | HTTPS |
File Adapters | FTP | 基于 SSL 的 FTP |
传输级授权
要实现传输级授权,您可以将 HTTP 与客户端身份验证一起使用。HTTP 传输级别身份验证可以使用用户名和密码、X.509 证书或 SAP 登录票证。
消息级安全
可以使用加密技术和数字签名来实现消息级别的安全性。要通过网络发送的消息首先由加密算法加密,该算法包括用于加密的会话密钥和公钥。接收方使用相同的会话密钥和公钥来解密消息以查看内容。
HTTP 传输层
您可以将以下机制用于 HTTP 传输级别 –
- 用户名和密码
- X.509 证书
- SAP 登录票
- 消息级安全
- S/MIME
- WS安全
- XML 签名
- XML 加密
SAP PI – 创建对象
SAP PI 是一种运行时环境,可将入站消息分配给接收者并将它们映射到另一个结构或协议。SAP NW PI 需要有关如何处理消息的信息。有关设计对象的信息位于 PI Enterprise Service Repository ESR 和 Integration Directory 中。
连接到 SAP PI 的系统维护在系统架构目录 (SLD) 中。SLD 中的数据可分为以下几类 –
- 软件组件信息
- 系统景观描述
软件组件信息
它包括有关所有可用 SAP 软件模块的信息。它还包括软件模块和相关性的可能组合。例如,软件组件、版本、支持包、操作系统版本和数据库等。
要检查这一点,请转到 System Landscape Directory (SLD)
要查看所有技术系统、它们的类型、版本和上次更新,请转到技术系统选项卡。
要查看产品和软件组件,请转至软件目录选项。
单击“产品”选项卡后,您可以看到所有产品,以及它们的版本和供应商名称。
您还可以检查软件组件、版本和供应商名称。
系统格局描述定义了各个系统格局信息。数据供应商定期提供 SLD 最新的系统信息。
SAP PI – 建模场景
模型显示应用程序与其设计对象(如消息类型、数据类型等)之间的消息交换。模型是集成配置场景的基础,输入和输出处理定义了消息的路由。SAP PI 建模场景用于在 SAP PI 中设计集成场景。
您可以使用以下两种集成场景模型 –
- 流程组件架构模型
- 流程集成场景模型
流程组件架构模型
流程组件架构模型用于应用程序角色 SOA 主干。该模型包括流程组件模型、集成场景模型和流程组件交互模型。流程组件模型提供了流程组件内部结构的详细信息。集成场景模型定义了跨不同部署单元和流程组件的完整场景。流程组件模型定义了不同组件之间如何交互。
流程集成场景模型
这用于应用程序角色流程集成场景。它是 Enterprise Service Builder 的设计对象,由名称和命名空间唯一标识,您可以创建多个版本。
在创建流程集成模型之前,您需要定义业务场景和业务流程。流程集成步骤在应用程序中执行。应用程序以软件组件的形式运行。您还可以创建多个版本的软件组件,应用程序和软件组件之间的关系是 1:1。
SAP PI – 设计对象
设计对象由名称和命名空间唯一标识,并分配给一个软件组件。您可以创建不同的设计对象来执行各种功能,在集成场景中,很少有强制对象,而其他对象则是可选的。最常见的设计对象包括流程集成场景、消息类型、数据类型、映射等。
下表定义了常见的设计对象、它们的功能和在场景中的使用 –
Design Object | 强制的 | 功能 |
---|---|---|
Integration scenarios | 不 | 它用于捆绑所有必要的设计对象 |
Message types | 是的 | 用于封装数据类型 |
Data types | 是的 | 用于描述要交换的数据的结构 |
Service Interfaces | 是的 | 它封装了消息类型和参数 |
Mapping | 不 | 消息映射 |
Integration processes | 不 | 它定义了 ccBPM 工作流程 |
这些设计对象通常以层次结构的形式表示。
SAP PI – 显示设计对象
考虑一家拥有许多接口并且每个接口都包含一个中间件的公司。您想查看使用的不同类型的中间件。这可以通过登录 SAP PI 工具起始页来完成。
步骤 1 – 使用集成生成器 URL 或 T 代码 – SXMB_IFR。
步骤 2 – 转到 SAP PI 7.3 屏幕上的 System Landscape Directory。
步骤 3 – 单击产品,如下面的屏幕截图所示。如果系统提示您输入用户名和密码,请输入详细信息。
步骤 4 – 要查看技术系统,软件组件被分配到,输入产品名称,然后单击 Go。
步骤 5 – 单击产品名称并转到详细信息窗格上的已安装系统选项卡。您可以在那里检查分配的技术系统的名称。
步骤 6 – 如果您想查看从该技术系统派生的业务系统,请选择技术系统。您也可以通过转到 SLD 主页 → 业务系统来查看。
步骤 7 – 输入技术系统名称并单击 Go。
步骤 8 – 命名确定业务系统名称的字段。
SAP PI – 集成场景
要在 SAP PI 中创建集成场景,您需要在 System Landscape Directory 中创建技术和业务系统。
SLD 在 SAP NetWeaver Application Server Java 上作为 Java 软件组件 (SAP _JTECHT) 实施。它基于开放的通用信息模型 (CIM) 标准,由 Distributed Management Task Force, Inc. 在www.dmtf.org定义和发布。
SLD 是应用程序组件信息、产品和软件组件以及系统环境数据(技术和业务系统)的中央列表工具。
在 SLD 中,要从业务模型转移到技术模型,您需要使用流程步骤和软件组件之间的关系。
如何在 SLD 中传输软件组件?
安装 System Landscape Directory 时,将安装初始目录。
从 SAP Market Place,您可以导入更多最新目录。
您还可以根据项目和集成方案导入自己的软件组件和产品。
对于A2A场景,使用业务系统,它们存在于SLD中。对于 B2B 场景,您使用业务对象,它们驻留在集成目录中。
技术体系
技术系统是系统景观目录 (SLD) 的一部分,包含有关版本、数据库和补丁级别、操作系统等的信息。
技术系统有不同的模式 –
- AS ABAP系统
- AS Java 系统
- 独立Java系统
- 第三方
有不同的导入工具可用于将数据从技术系统传输到 SLD。SAP NetWeaver Administrator 是常用的 SAP AS JAVA > 7.1 导入工具。
业务系统
业务系统在 SLD 中充当发送方和接收方。他们从技术系统中继承软件组件作为产品。SLD 中的业务系统中不能添加新的软件组件。
使用 SAP AS ABAP,每个客户端都被定义为一个业务系统。在 SAP AS Java 中,每个技术系统都充当一个业务系统。
SAP PI – 文件到文件场景
在 SAP PI 文件到文件场景中,我们将文件从源系统传输到目标系统。在 SAP PI 中构建组件后,您可以通过在 Enterprise Service Builder 中创建对象在 SAP PI 系统中传输文件。
SAP PI — 文件到文件场景执行
步骤 1 – 转到 SAP PI 工具页面 → ESR 下的 Enterprise Service Builder。
步骤 2 – 要查找必须在其下创建对象的组件的名称,请展开组件以找出软件组件版本。
步骤 3 – 选择组件 → 右键单击,单击新建以在该组件下创建一个对象。
第 4 步– 我们创建的第一个对象是命名空间。以 URL 的形式输入命名空间,然后单击底部的创建按钮。
步骤 5 – 在软件组件下创建对象后,保存并激活对象。
步骤 6 – 要激活,请单击激活,如下面的屏幕截图所示 –
步骤 7 – 保存并激活命名空间后,创建数据类型。转到软件组件 → 右键单击 → 新建。在下一个窗口中,选择 interface objects → data type。
步骤 8 – 输入数据类型和命名空间的名称,然后单击如上创建。接下来是将子元素插入到数据类型中。
步骤 9 – 输入元素的名称。
步骤 10 – 插入子元素以添加子员工 ID 和姓名。
步骤 11 – 定义类型和出现次数。出现次数定义了该元素在文件中出现的次数。您可以选择最小出现次数和最大出现次数值。
步骤 12 – 单击保存按钮。
步骤 13 – 激活数据类型。转到数据类型 → 激活。
创建消息类型
步骤 1 – 右键单击命名空间 → 新建
步骤 2 – 在接口对象下,选择消息类型。输入字段。
步骤 3 – 输入消息类型的名称。
步骤 4 – 默认情况下,它采用命名空间和软件组件的名称。如果没有,您可以手动选择。然后,单击创建。
第 5 步– 现在,定义您将用于消息类型的数据类型。将数据类型从左侧栏中拖到消息类型 ( )下的数据类型选项中。单击保存按钮。
步骤 6 – 激活消息类型 → 激活。
注意– 如果输入文件和输出文件的结构相同,则只能使用一种数据类型和一种消息类型。如果结构不同,则必须为入站和出站创建两种数据类型和消息类型。在这个例子中,我们对输入和输出文件使用相同的结构。
SAP PI – 创建服务接口
现在让我们了解如何创建服务接口。我们必须创建两个服务接口——一个用于入站,一个用于出站。
步骤 1 – 右键单击命名空间 → 新建 → 接口对象 → 服务接口
第 2 步– 输入服务接口的名称(此处为 In – Inbound),默认情况下,它采用 Namespace 的值和软件组件版本。单击创建按钮。
步骤 3 – 在入站服务接口中,输入类别为入站,通信模式为同步或异步。
步骤 4 – 现在,通过将消息类型从左窗格拖动到服务接口入站请求消息来定义消息类型,如下所示。单击顶部的保存按钮。
步骤 5 – 保存此服务界面后,转到服务界面并激活。
步骤 6 – 同样,为出站流程创建服务接口。
步骤 7 – 您可以选择服务接口 → 对象 → 新建。
步骤 8 – 输入服务接口的名称(Out 代表出站流程)。
步骤 9 – 单击创建按钮创建界面。
步骤 10 – 在下一个窗口中,定义Outbound Service Interface的类别和通信模式。由于两个服务接口都有一种消息类型,因此从左窗格中拖动消息类型以请求消息,然后单击保存。
步骤 11 – 保存后,单击服务接口按钮下的激活按钮。
SAP PI – 创建消息映射
现在让我们了解如何创建消息映射以将入站流程映射到出站流程。
步骤 1 – 转到对象 → 新建 → 映射对象 → 消息映射。
步骤 2 – 输入映射名称,然后单击创建,如上所示。现在,定义源和目标消息。将消息类型下的消息拖动到映射下的源和目标消息。
步骤 3 – 现在,使用可用的映射选项映射这些消息。从下拉列表中选择功能,您可以在每个选项卡下看到不同的可用选项。
示例– 您在源文件中有名字和姓氏,并且希望在目标文件中有全名。在这里,您可以在 Text 功能下使用 Concatenate。
第 4 步– 我们现在正在实现文件到文件场景,因此,我们将只选择源和目标映射,如果名称和结构相同,则将直接映射。
步骤 5 – 由于结构相同,我们将使用上述方法。在下一个窗口中,单击Apply。
步骤 6 – 您可以看到所有图标变为绿色并显示映射。现在,保存映射。
步骤 7 – 激活消息映射。转至消息映射 → 激活。激活此消息映射后,在 ESR 中创建操作映射。
SAP PI – 创建操作映射
现在让我们了解如何创建操作映射。
步骤 1 – 转到对象 → 新建 → 消息对象 → 操作映射。
步骤 2 – 输入操作映射的名称,然后单击创建按钮。
步骤 3 – 在下一个窗口中,您需要输入源操作和目标操作。将服务接口从左窗格拖到源操作和目标操作。入站服务接口将被拖动到目标操作,出站服务接口将被拖动到源操作。
步骤 4 – 将消息映射拖到映射程序选项,如下面的屏幕截图所示。完成这些设置后,单击顶部的保存按钮。
步骤 5 – 现在,转到操作映射 → 激活 → 激活 → 关闭。
步骤 6 – 转到 SAP PI 工具主页上集成目录下的集成生成器以配置方案。
步骤 7 – 转到集成生成器的配置方案视图。
步骤 8 – 要配置场景,请转到对象 → 新建 → 在管理选项卡下 → 配置场景。
步骤 9 – 输入配置方案的名称,然后单击创建按钮。
步骤 10 –保存并激活配置方案,如下面的屏幕截图所示。
SAP PI – 创建通信通道
现在让我们了解如何创建通信通道。
步骤 1 – 右键单击配置方案 → 新建
第 2 步– 您必须创建两个通信渠道 – 一个用于发送方,另一个用于接收方。从可用组件列表中为发送方和接收方通道选择通信组件。输入通讯渠道的名称并点击创建。
步骤 3 – 选择通信通道下的参数。转至适配器并单击可用的适配器类型。适配器类型取决于场景的类型。对于文件到文件方案,您可以选择文件适配器。
步骤 4 – 以下是可以为不同场景选择的可用适配器列表。
步骤 5 – 根据通信通道的类型,可以选择适配器类型作为发送方或接收方。
步骤 6 – 输入源文件目录的路径。
步骤 7 – 输入源文件后,单击保存。保存发送方通信渠道后,单击激活按钮 → 激活 → 关闭。
步骤 8 – 同样,您必须为接收器创建一个通信通道。输入通信渠道组件和接收方的通信渠道名称,然后点击创建。
步骤 9 – 选择适配器类型为文件,然后选择接收器。输入目标目录和文件名方案,如下面的屏幕截图所示 –
步骤 10 –保存文件并激活接收器通信通道。创建发送方和接收方通信通道后,创建集成配置。
SAP PI – 创建集成配置
现在让我们了解如何创建集成配置。
执行以下步骤 –
步骤 1 – 转到对象 → 新建 → 在协作协议下 → 集成配置
步骤 2 – 在通信组件中,输入之前使用的发送器组件。
接口将与之前步骤中在 ESR 中创建的出站进程的服务接口名称相同。
命名空间将与之前步骤中在 ESR 中创建的命名空间相同。
单击创建按钮。
步骤 3 – 在入站处理选项卡中,选择为发件人创建的通信渠道。
步骤 4 – 在接收器选项卡中,选择通信接收器,如下面的屏幕截图所示 –
步骤 5 – 转到接收器接口选项卡,选择操作映射。单击搜索并选择操作映射,如下面的屏幕截图所示。操作映射的创建方式与前面的步骤相同。
步骤 6 – 转到出站处理选项卡并选择接收方通信通道。
步骤 7 – 完成上述设置后,单击顶部的保存并激活。
步骤 8 – 将 sample.xml 文件放入出站文件夹。您可以从 ESR 中的消息映射中获取示例 xml 文件。转至 ESR → 消息映射 → 测试。
步骤 9 – 此示例文件没有任何数据。创建 abc.xml 文件并将示例 xml 粘贴到该文件中。您必须向此 xml 文件添加一些数据,如下面的屏幕截图所示。
步骤 10 – 将此文件放在配置时目录和文件方案中提到的发送文件夹中。
步骤 11 – 转到Receiver 文件夹,您可以看到其中包含数据的 xml 文件。
步骤 12 – 要监视适配器引擎 → 通信通道监视器,请转到配置和监视主页。
步骤 13 – 转到适配器引擎 → 通信通道监视器。
步骤 14 – 复制通信渠道
步骤 15 – 您可以检查文件到文件场景的状态。如果它运行正常,您将在状态下看到一个绿色图标。
SAP PI – 连接性
SAP PI 连接处理源或目标系统与集成服务器的连接。此连接处理与集成服务器的消息交换。要交换的消息格式应采用 SAP PI 协议格式,或者应使用适配器将外部格式转换为 SAP PI 特定格式。
SAP PI 为您提供了广泛的适配器,允许您连接来自不同协议的应用程序。在发送方的情况下,适配器将在发送方协议中加密的入站消息转换为 PI-SOAP 消息;在接收方的情况下,PI-SOAP 消息随后被转换为接收方的协议。
SAP NetWeaver PI 中的可用适配器
SAP PI 支持不同的适配器,其中一些是高级适配器引擎或集成引擎中的进程。IDoc、HTTP 和 XI 是在集成引擎中处理的少数适配器。
以下是 SAP NetWeaver PI 中可用的适配器 –
S.No. | SAP NetWeaver 中的适配器 PI 和用途 |
---|---|
1 |
RFC Adapter 这用于使用 RFC 接口与其他 SAP 系统进行通信。 |
2 |
HTTP Adapter/HTTP AAE Adapter 这允许使用 HTTP 协议交换数据。这些适配器在集成引擎和高级适配器引擎中都可用。 |
3 |
JDBC Adapter 这允许访问数据库。 |
4 |
File/FTP Adapter 这用于使用文件接口或 FTP 服务器与外部系统进行数据交换。 |
5 |
Mail Adapter 这允许您将电子邮件服务器连接到集成引擎。 |
6 |
IDoc Adapter 这允许交换 IDoc。这些适配器在集成引擎和高级适配器引擎中都可用。 |
7 |
XI Adapter 此适配器允许您使用代理进行通信。此适配器不在高级适配器引擎中运行,而是在集成引擎中运行。XI Adapter 仅用于与接收方建立 HTTP 连接。 |
8 |
WS Adapter 该适配器用于根据标准 Web 服务可靠消息传递 (WS-RM) 协议提供与 WS 提供者和 WS 使用者的连接。SAP 使用自己的收件箱开发了 WS-RM 协议,该协议在集成引擎的 ABAP 堆栈中实现。 |
9 |
JMS Adapter 它支持使用 JMS API 与消息传递系统进行通信。 |
10 |
SOAP Adapter 它允许使用 SOAP 集成远程客户端或 Web 服务提供者。 |
如何检查现有的适配器引擎?
您可以通过执行以下步骤检查系统景观目录 (SLD) 中现有适配器引擎的列表 –
步骤 1 – 使用集成生成器 URL 或 T 代码 – SXMB_IFR。
步骤 2 – 转到 SAP PI 7.3 屏幕上的 System Landscape 目录,然后单击Product,如下所示。如果系统提示您输入用户名和密码,请输入详细信息。
步骤 3 – 导航到 System Landscape Directory 左侧窗格中的 Technical System 区域。
步骤 4 – 选择流程集成作为技术系统的类型。
步骤 5 – 检查列出了多少适配器引擎。
步骤 6 – 只有一种类型的 XIAdapterFramework 适配器引擎对应于集成服务器上的中央适配器引擎。
步骤 7 – 您还可以在 Runtime Workbench 上检查现有适配器的列表。转到配置和监控。
步骤 8 – 在下一个窗口中,转到组件监视器选项。
步骤 9 – 选择状态为“全部”的组件。
SAP PI – ccBPM 概述
业务流程管理处理跨组件 BPM。这包括 SAP 后端中的 SAP 工作流和 Integration Server 上的消息处理。
跨组件业务流程管理为 SAP NetWeaver Process Integration 提供了有状态消息处理功能,即将集成流程的状态保存在集成服务器上。例如,这意味着集成过程可以无限等待,直到收到更多消息或到达特定期限。此外,可以在集成过程中进一步处理消息。
上图显示了来自系统 1、2、3 的消息已经发送到集成服务器,只有当所有消息都到达时,复合消息才被发送到目标系统业务系统 4。使用跨组件 BPM,该消息已经在集成服务器上,被持久化。任何其他到达集成服务器的消息,消息之间都定义了一种关系,以确保所有消息都正确发送。业务流程引擎负责在 ccBPM 中执行此任务。
SAP PI – ccBPM 配置
在使用 ccBPM 时,ccBPM 中使用的集成过程在接收入站消息的同时也将消息发送到相应的接收方业务系统。
ccBPM 由图形流程编辑器和业务流程引擎组成。选择集成流程时,业务流程编辑器将打开。
要打开业务流程编辑器,请转至 SAP PI 工具页面上的 ESR → ES Builder → Design Objects Integration 目录。
SAP PI — 集成流程
显示积分过程屏幕打开,并显示积分过程的图形定义。
双击集成流程时,业务流程编辑器将启动。它由以下区域组成 –
- 带有标题数据的区域
- 图形定义区
- 属性窗格
- 处理视图区域
- 处理日志
- 对象区域
集成过程中的步骤
在集成流程中配置的步骤是消息步骤或与流程相关的步骤。
以下是与消息相关的步骤–
- 收到消息
- 发送信息
- 确定流程中后续发送步骤的接收者
- 转换消息
以下是与流程相关的步骤–
- 转变
- 堵塞
- 控制(触发异常或警报)
- 叉
- 容器操作(数据处理)
- while 循环
- 等待
SAP PI – 监控集成流程
您可以使用消息监控功能在消息级别监控集成过程。
第 1 步– 使用T 代码 – SXMB_MONI
此事务可用于显示集成过程中的消息处理,或者您也可以移动到过程视图。
第 2 步– 您还可以选择在此交易中切换到流程视图。您可以选择处理复选框和执行。
步骤 3 – 在事务 SXMB_MONI 中,您可以使用不同的标准也直接选择进程。
例子
流程监视器 T 代码 — SWF_XI_SWI1 需要集成流程的工作流编号。
您可以使用 T 代码 – SXI_CACHE 确定运行时缓存,如下面的屏幕截图所示 –
SAP PI – 网络服务
Web 服务是应用程序功能或服务,可以通过 Internet 标准使用。它是一个独立的、模块化的、自描述的应用程序功能或服务。
它可以使用标准互联网协议进行描述、提供、定位和转换或调用。
每个 Web 服务都封装了一个用于执行许多任务的功能。服务提供者用于提供对 Web 服务的访问。服务提供者拥有 WSDL 文档。
Web 服务用户称为服务请求者,他在 Web 浏览器的帮助下使用 Web 服务。在正常情况下,服务请求者是访问 Web 服务的应用程序。应用程序从服务描述中获取访问 Web 服务所需的所有详细信息,这些信息保存在服务注册表中。
下图显示了一个常见的 Web 服务场景 –
网络服务 – 主要功能
以下是Web 服务的主要功能–
-
Web 服务允许运行在不同平台、操作系统和不同语言上的程序相互通信。
-
Web 服务是应用程序功能或服务。
-
网络服务可以通过互联网标准使用。
-
可以发布和跟踪 Web 服务。
-
Web 服务构成了企业服务架构 (ESA) 的基础,ESA 被称为 SAP 的面向服务架构 SOA 的增强版本。
如何分析不同的 Web 服务?
执行以下步骤来分析不同的 Web 服务 –
步骤 1 – 登录 ECC 系统,使用交易代码 — SOAMANAGER
步骤 2 – 选择 Web 服务复选框 → 应用选择。
步骤 3 – 验证概览选项卡是否包含条目 SERVICE → 显示绑定。如果没有显示SERVICE绑定,则表示必须完成绑定。
第 4 步– 要显示 Web 服务及其绑定,请为所选绑定或服务链接选择打开 WSDL 文档。
第 5 步– 显示 WSDL 的 Web 浏览器打开 → 您可以在 WSDL 末尾向下滚动。您将在节点 WSDL 端口下找到端点。
不推荐使用 SAP PI 的地方?
不建议将 SAP PI 用于同步请求/响应场景。在同步通信中,它由请求和响应操作调用,操作后立即返回进程输出。在同步通信的情况下,负载更多地位于基础设施上。
在非 SAP 后端(如 Java、DOT NET)中,不建议将 SAP PI 作为 UI 驱动场景中的中间件工具。
当后端系统作为 UI 服务公开时,不建议将 SAP PI 用于 UI 驱动的场景。