CPI:API调用以根据来自第一个API调用的最后一条记录的ID来获取第二组记录

2020-08-15 11:55发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 要求:通过API调...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,

要求:通过API调用获取发票,并通过调用客户API丰富客户数据,然后通过OData将其发布到ECC。

要退回的发票数限制为100条记录。 我有500多个发票,可以按时间增加。 我应该对API调用使用过滤器,以获取下一组记录,如下所示:

第一次API调用: https://XXXXX.com/v1/invoices ?limit = 100

第二个API调用: https://XXXXX.com/v1/invoices ?limit = 100 和starting_after = {来自第一个API调用的第100个发票ID}

第三个API调用: https://XXXXX.com/v1/invoices ?limit = 100 &starting_after = {第二个API调用中的第100个发票ID}

第四次API调用: https://XXXXX.com/v1/invoices ?limit = 100 ⁡&starting_after = {来自第3个API调用的第100个发票ID}

....第N次通话。

如何在CPI中实现这一目标? 任何指针都会有很大帮助。


尝试的方法:使用//has_more ='true'循环调用。 但是它一次又一次地提取相同的发票,API不支持此发票。

此致

Pavan G

3条回答
吹牛啤
2020-08-15 12:42

你好 Sriprasad Shivaram Bhat

感谢您的回复。


我尝试使用hasMore通过循环过程调用来调用API,因为它告诉更多记录是否要提取,但是在每个循环中它选择了相同的发票。 似乎不支持获取下一组记录属性。

我在运行时配置的"允许的标头"部分中尝试了*,并检查了跟踪,但是找不到任何可用于获取下一个属性的属性。


我正在考虑使用以下方法。

选择100张发票将其存储在DataStore中,然后选择最后一张发票,并使用循环流程调用并使用groovy脚本再次选择最后一张发票,直到hasMore ='false'。

在另一个本地集成过程中,将从数据存储中获取发票以进行进一步处理,并在处理后将其删除。

请让我知道是否可以通过其他任何简单的方法来实现。

关于,

Pavan G

一周热门 更多>