SAP Cloud for Customer ABSL的一些優化

i042416發表於2020-03-07

這是優化前的程式碼,可以看到ServiceRequest.Retrieve在foreach迴圈裡被呼叫 。

SAP Cloud for Customer ABSL的一些優化

如何優化:

其實在PDI裡有提示。在ServiceRequest後面敲個“。”,觸發程式碼自動完成功能,可以看到Retrieve方法有三個過載,這意味著Retrieve的輸入引數不同,後臺編譯生成的ABAP方法也不同。

SAP Cloud for Customer ABSL的一些優化

如何優化:

還是一樣的思路:

在line 29宣告一個行型別為ID的容器idCollection,然後按照業務邏輯,把需要retrieve的id依次加入這個容器,最後在line 39傳一個容器進去。

可以和41行的retrieve比較,這裡的retrieve傳入的是一個單個的行記錄。如果傳入引數是一個容器,那麼編譯出來的ABAP程式碼執行的是RETRIEVE_MULTIPLE_LINES, 而不是現在在迴圈裡執行retrieve_single.


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2678926/,如需轉載,請註明出處,否則將追究法律責任。

相關文章