点击此处---> 群内免费提供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]:在实体集合的序列化期间发生错误。
请参见 /img/comments/ 13085009/view.html 作为解决方案。
问题"找不到数据。尝试调整过滤器设置。" 在使用注释限制列后已解决。 我无法弄清楚为什么会这样。
嗨,奥琳娜,
谢谢,它肯定有用。 但是,即使看起来我返回的结构正确,数据也不会显示在Fiori预览中。 "找不到数据。请尝试调整过滤器设置。"
服务实施:
显然,SuccessFactors不支持$ inlinecount,因此除了查询之外,我还获得了显式的$ count。 (这打破了我认为的$ filter和$ inlinecount的组合)
返回的数据:
嗨,Pieter,
看来,在使用流畅的api进行外部服务调用时,您遇到了很多限制。 我确实遇到了其中的少数几个,并决定脱离使用流畅的api框架。 我所做的就是将axios称为自己,如下所示:
我相信您已经知道cds框架在后台使用axios。 这只是一个DIY过程。
嗨,Pieter,
正如我在上面给您的链接中提到的那样,node.js运行时中的自定义处理程序应使用OData v4,而不是OData v2。 另外,结果变量应该是一个数组(也写在链接中),请调整结果初始化。
您是否正在使用OData v2适配器 https://www .npmjs.com/package/@ sap/cds-odata-v2-adapter-proxy 还是您要制作自己的?
最诚挚的问候,
Olena
嗨Olena,
感谢您的跟进。 我共享的代码可以正常工作,但是后来我发现问题必须与注解或限制Fiori预览中使用的属性有关。 查看接受的答案。
最诚挚的问候,
Pieter
一周热门 更多>