企业邮箱_锋云服务器_高性能

时间:2022-01-15 02:20       来源: 微辰云

企业邮箱_锋云服务器_高性能

服务层已经有一段时间没有使用称为脚本引擎(scriptengine)的新功能进行增强了,该功能是与SAP Business One(SAP HANA 9.2 PL04版本)一起发布的。我相信您已经阅读了特立尼达和安迪?白的相关博客文章,以及SAP Note 2343691–服务层支持脚本引擎。

正如您在这些文章中了解到的,使用脚本引擎有很多好处,例如更好的性能,因为它减少了从应用程序到服务层的调用;服务器端定制的重用;以及对多个操作的全局事务的实现。

既然您已经熟悉了该功能,那么让我通过两个非常简单的示例来指导您如何实现它:

示例A–创建销售订单

所以,下面是一个场景:在创建销售订单之前,您需要验证客户是否已经存在于系统中。如果它不存在,则在销售订单之前创建它,如果它已经存在,则只创建销售订单。在没有脚本引擎(9.2 PL04之前)的世界中,大数据能做什么,您的应用程序必须至少向服务层执行两个请求(GET BusinessPartners(id)和POST Orders)。从9.2 PL04开始,您可以在服务层对自己的自定义脚本(在脚本引擎级别)执行单个请求,这将在内部威胁其他调用。

在本例中,我感兴趣的是演示全局事务的使用以及如何从自定义脚本调用服务层实体,使用脚本引擎功能。

以下是您所需的全部:一个javascript和一个xml,打包在一个zip文件中。

完成此开发所需的步骤如下所述:

现在让我们一步一步地运行它。

1。创建一个javaScript文件,使用js扩展名命名,在本例中销售订单.js. 只需打开你最喜欢的IDE,写下下面的代码,注意它是完整的注释:

2。现在创建一个XML文件,将其命名为与前面的javascript相同的名称,在本例中,只需将扩展名更改为ard销售订单.ard。填写合作伙伴名称空间、合作伙伴名称、脚本名称和文件名,如下所示:

请注意,这将定义您将在应用程序中调用的URL,它是https://:50000/b1s/v1/script//

在这种情况下,物联网培训,它将是一个到URL https://:50000/b1s/v1/script/sapone/salesforders

3的帖子。现在生成一个包含上述xml和js文件的标准zip文件。在https://:40000/ExtensionManager打开扩展管理器,物联网是什么意思,公有云市场,选择"扩展">"导入">"浏览">选择zip文件并完成向导。然后将分机分配给特定公司:选择"公司分配">"分配">选择分机,完成向导

5。打开您最喜欢的REST客户端,并通过运行一个到登录实体的POST:

和一个到URL https://:50000/b1s/v1/script//的POST来测试它,使用下面的主体:

您应该得到一个包含业务合作伙伴详细信息和销售订单详细信息的json对象。

旁注:在此时放置在服务器端调试此类脚本,但您可以使用控制台.log命令跟踪要监视的变量或步骤。日志文件记录在服务器端的路径//ServiceLayer/logs/script/下,在本例中为/usr/sap/SAPBusinessOne/ServiceLayer/logs/script:

示例B–标识当前登录的用户

标识当前会话属性(如登录的用户和服务器)可能非常有用公司,主要是当对同一个脚本有许多请求,并且出于任何原因,您希望识别和记录每个调用时。虽然到目前为止还没有标准的服务层实体来实现这一点,但是您可以使用以下脚本,但请注意,这是一个临时性的解决方案—在未来的修补程序级别可能会提供一个新接口。

这是对上述脚本的调用,返回的json:

感谢@Andy Bai提供了有关如何获取当前会话属性的信息,淘客采集,请继续关注我们的博客,我们将提供更多的详细信息。

希望你能利用服务层的所有力量来增强你的应用程序。好好享受!