云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

全站加速_服务器分区_限时特惠

小七 141 0

简介

您正在实施的"eDocument:Electronic Invoicing for Italy"解决方案只有一个SCPI(HCI)租户。您已经阅读了如何创建eDocument包的测试副本,但它不适合您的场景,大数据趋势,因为您在SdI注册时指示测试结束生产的相同端点。

在这种情况下,爱淘客,您不能使用相同的iFlow从SdI发送和接收消息:一旦您在iFlow中将参数模式切换为PROD,停止向SdI测试发送消息。当你收到来自SdI的通知和发票时,它们都会被存储到数据存储中,以财政代码区分,不管SdI调用什么。

本博客旨在展示如何轻松构建一个自定义中间件,物联网工程课程,将标准SCPI eDocument解决方案与相应的调用者(SAP后端或SdI)连接起来。

前提条件

根据SAP note 2583309实现的意大利eDocument解决方案。部署了最新版本的eDocument for Italy(我们使用1.0.3)。主动实验性SdI系统

解决方案-概述

如果您在SdI注册了相同的端点进行测试和生产,您如何知道调用您的SCPI应用程序的是SdI test还是SdI PROD?如果您同时使用测试和生产环境运行您的场景,您可能会遇到这样的情况。

要克服的主要问题是允许SCPI了解谁在呼叫。为此,我们需要做点什么。

这个解决方案背后的想法是:

原始的eDcoument Italy包,其端点以"PROD"后缀(即/PROD/ItalReceiveInvoice)区分复制的eDocument Italy包,其端点以"TEST"后缀区分(即/TEST/ItalyReceiveInvoice)一个定制构建的工件,收集了在SdI注册并由SAP调用的所有端点,无论调用方是谁,它都能够理解调用方并相应地重定向消息

解决方案–详细信息

步骤1–向所有eDocument添加后缀"/PROD"

添加后缀"/PROD":意大利地址的电子发票(甚至到流程直接连接)。

意大利接收发票示例重新配置。

部署。

步骤2–创建测试副本包并添加后缀"TEST"

复制eDocument:Electronic Invoicing for Italy solution from Discovery in your SCPI,添加"TEST"后缀,然后将后缀"/TEST"添加到其中的所有地址。

意大利接收发票(TEST)重新配置的示例。

部署它。

步骤3–创建eDocument:ROUTER包

此包将包含:

意大利端点–值映射

每个eDocument iFlow(TEST and PROD)都可以在一个地址访问:在中收集地址下面的值映射列表。根据字符串"TEST"或"PROD"区分的相应iFlow名称访问该列表。我们总共有14个端点(7个用于测试,7个用于生产)。

值映射通过下一步显示的groovy脚本访问。

请注意,我使用的是默认端点,而不是那些基于自定义域的端点。您可以选择使用什么。

意大利路由器-集成流程

路由器执行以下步骤:

路由器iFlow收集SdI和SAP调用的所有地址。

地址可配置。

4个附加参数为:

SAPCaller\ U TEST和SAPCaller\ U PROD:调用SAP后端系统名称(3个字符)SdIUserPROD和SdIUserTEST:根据SAP note 2583309第12章创建的用户

在允许的标题中添加SAPChenticatedUserName。

接收发票(路由器)示例。SdI调用SCPI。

处理SdI消息的工作方式如下。

使用Groovy脚本访问值映射。

要连接到SCPI本身,可以使用用户凭据(在安全材料下创建一个凭据)或客户端证书。

当SAP调用SCPI时,唯一的区别是SCPI如何识别调用方。相应地构建一个groovy脚本(例如,您可以从负载中获取它,购返利,否则从SOAP头中,您可以选择适合您的场景的选项)。

其余的工作原理完全相同。

测试解决方案

让我们从SAP TEST发送并开发票,从SAP PROD发送另一个到SCPI。我们希望将这两个通知接收到不同的数据存储中,云服务器买,并在正确的系统中检索它们。

从SAP TST发送

发送发票日志详细信息并接收通知日志详细信息

数据存储

从SAP PRD发送

发送发票日志详细信息并接收通知日志详细信息

数据存储

检索通知从SAP TST

检索后的数据存储:TEST removed

从SAP PRD检索通知

检索后的数据存储:PROD removed

优点和缺点

这里是关于此解决方案的一些考虑。

统计

这里是关于近千条消息的一些数字(无论是SendInvoice还是ReceiveNotification)通过自定义路由器工件(仅路由器,而不是路由器+)。