SAP Cloud for Customer ABSL的一些优化

这是优化前的代码,可以看到ServiceRequest.Retrieve在foreach循环里被调用 。

SAP Cloud for Customer ABSL的一些优化_第1张图片

如何优化:

其实在PDI里有提示。在ServiceRequest后面敲个“。”,触发代码自动完成功能,可以看到Retrieve方法有三个重载,这意味着Retrieve的输入参数不同,后台编译生成的ABAP方法也不同。

SAP Cloud for Customer ABSL的一些优化_第2张图片

如何优化:

还是一样的思路:

在line 29声明一个行类型为ID的容器idCollection,然后按照业务逻辑,把需要retrieve的id依次加入这个容器,最后在line 39传一个容器进去。

可以和41行的retrieve比较,这里的retrieve传入的是一个单个的行记录。如果传入参数是一个容器,那么编译出来的ABAP代码执行的是RETRIEVE_MULTIPLE_LINES, 而不是现在在循环里执行retrieve_single.

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

你可能感兴趣的:(cloud,cloud-foundry,sap,saprfc,abap)