博客的目的
这个博客的目的是提供一个场景的技术概述和可行性,在这个场景中,您需要从同一个SAP ECC系统向不同环境中的多个PI系统发送代理消息。
要求
假设ECC系统连接到一个PI系统。现在,事务SPROXY将始终显示该特定系统的ESR内容。
您可能会遇到一个要求,您希望您的ECC系统向另一个处于另一个环境中的系统发送代理消息。
为了让事情更清楚,大数据怎么学,让我用一个示例来解释您:
目前的情况,假设您的ECC系统已连接到一个名为PILegacy的PI系统。因此,PILegacy的所有ESR内容都将显示在ECC系统的SPROXY事务中。要求从ECC向NewPI发送代理消息
我们如何实现这一要求?
问题
这里的问题是,一个SAP系统的SPROXY一次只能连接一个ESR。但是,我们需要将一个SAP系统的特定代理消息触发到一个特定的PI系统,并将同一个SAP系统的其他代理消息触发到另一个场景中的另一个PI系统。
解决方案
这一要求可以通过两种方式来实现。
我将解释两种解决方案来实现这一要求。
第一种解决方案
必须知道一次,SPROXY只能连接到一个ESR。
注意在我的场景中,NewPI系统仅为Java stack(AEX)。
请按照ECC系统中的以下步骤操作:
点击事务SM59
创建类型为G的新RFC目的地–SAP\u PROXY\u ESR
放置NewPI AEX服务器主机名和端口
将路径前缀提到/rep
登录选项卡中的用户需要分配给角色SAP\u XI\u rep\u SERV\u User
一旦创建RFC目的地后,ECC系统中的SPROXY事务将指向新PI系统的ESR内容。
在SPROXY中ESR内容可见后,生成对应于我们场景的代理并激活该代理。
激活代理后,请在ECC系统中按照以下步骤操作:
点击事务SXMSIF
创建一个与我们为其激活代理的出站服务接口对应的发送方/接收方ID
接下来,转到事务SM59并创建一个类型为G的HTTP目的地(比如AEX\U DXB)到NewPI AEX
将AEX服务器主机名和端口
提到路径前缀为/XISOAPAdapter/MessageServlet?ximessage=true
那么,点击事务SXMB_ADM
转到集成引擎配置
单击特定配置
然后转到更改模式并单击"新建条目"。
创建一个类别运行时参数
将参数名称设为
url,并将子参数名称设为事务SXMSIF
Enter中先前创建的发送方/接收方ID的名称当前值为目的地://AEX\U DXB
这将确保每当触发此特定出站服务接口对应的代理消息时,总是将其发送到NewPI系统。
现在,ABAP程序将使用方法填充代理结构,大数据怎么学,并将代理消息发送给NewPI系统。
注释:一旦代理被激活,ECC中完成的配置就可以恢复,这样ECC系统就可以在SPROXY事务中显示PILegacy系统的ESR内容。这是因为SPROXY始终使用与单个ESR的连接。
由于这种实现要求的方法不干净(简单),因此,淘客商城,我建议使用第二种解决方案。
第二种解决方案
此解决方案涉及使用带有ABAP和SE80的web服务WSDL。
这是满足我们要求的最佳解决方案。
请遵循以下步骤:
步骤1:通过SE80访问ABAP代理创建向导
执行事务SE80并单击"编辑"对象"。在弹出屏幕中,有哪些云服务器,转到"企业服务"选项卡并选择客户端代理,然后按创建
步骤2:创建ABAP代理
此时将显示ABAP代理生成向导的第一个屏幕。在这里,我们选择URL/HTTP目的地,现在按Continue
,输入您在NewPI系统中从特定于您的场景的集成配置对象(ICO)中获得的WSDL的URL,然后按Continue
获得该URL,单击Integrated Configuration并选择Display WSDL
Next,输入包的详细信息,或者只需单击本地对象复选框并输入前缀"ZES"。当自动生成时,SAP只有有限数量的字符作为代理的名称。此前缀有助于确保在修剪名称以适应可用字段时不会遇到任何重复问题。现在,按Continue,在下一个屏幕上,按Complete
您的ABAP代理现在将生成,您将看到下面的屏幕。保存并激活
步骤3:激活代理后,请按照ECC系统中的以下配置步骤
点击事务SXMSIF
创建与我们激活代理的出站服务接口对应的发送方/接收方ID
下一步,转到事务SM59并创建一个G类型的HTTP目的地(比如AEX\U DXB)到NewPI AEX
将AEX服务器主机名和端口
将路径前缀提到/XISOAPAdapter/MessageServlet?ximessage=true
然后,点击事务SXMB\u ADM
转到集成引擎配置
单击特定配置
然后转到更改模式并单击"新建条目"
创建类别运行时的一个参数
将参数名称设为URL,淘客pid,并将子参数名称设为中先前创建的发送方/接收方ID的名称事务SXMSIF
输入当前值目的地://AEX\U DXB
这将确保每当触发此特定出站服务接口对应的代理消息时,它将始终发送到NewPI系统
现在,ABAP程序将使用method/methods填充代理结构,并将代理消息发送到NewPI系统。
这样就可以满足我们连接多个esr的要求。