欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SAP Cloud for Customer ABSL的一些优化 C4CCloud for CustomerSAP成都研究院SAP Cloud PlatformSAP云平台 

程序员文章站 2022-07-14 08:16:52
...

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

SAP Cloud for Customer ABSL的一些优化
            
    
    
        C4CCloud for CustomerSAP成都研究院SAP Cloud PlatformSAP云平台 

如何优化:

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

SAP Cloud for Customer ABSL的一些优化
            
    
    
        C4CCloud for CustomerSAP成都研究院SAP Cloud PlatformSAP云平台 

如何优化:

还是一样的思路:

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

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