如何在CAP中使用外部OData v2服务实现$ count = true支持?

2020-08-15 18:27发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)在由外部OData v2服务提供...

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

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


在由外部OData v2服务提供服务的实体上运行Fiori预览时,页面显示错误"不支持功能:fluent API的方法.count"。 在服务实现中有什么方法可以解决?

这将在查询中支持$ filter(因此不是我要的解决方案),但是出于测试目的,我尝试检查req.query.cqn.count是否为真,然后执行显式的OData v2 $ count 要求:

等待返回ext.tx(req).get("/img/User/$ count")

这确实得到了计数,但是在服务实现中返回数字会导致以下错误:

 [2020-07-06T19:41:42.970Z | 错误|  [1773773]:在实体集合的序列化期间发生错误。
 
5条回答

嗨,Pieter,

看来,在使用流畅的api进行外部服务调用时,您遇到了很多限制。 我确实遇到了其中的少数几个,并决定脱离使用流畅的api框架。 我所做的就是将axios称为自己,如下所示:

 const axios = require(" axios")。default;
 const client = axios.create(options);  <-选项是我的基本请求,即基本URL和身份验证
 client.post(path,data)<---您的案例路径=/User/$ count
 

我相信您已经知道cds框架在后台使用axios。 这只是一个DIY过程。

一周热门 更多>