点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在尝试使用CAP来聚合OData实体。
业务案例:每次用户访问应用程序时,它将在数据库实体" demo.Actions"中创建一个条目。 实体" demo.Actions"具有application和userId作为元素。 我试图找到一个应用程序的与众不同的用户计数。
首先,我尝试了以下注释方法。
@ Aggregation.ApplySupported.PropertyRestrictions:正确 实体操作,请从demo.Actions { 关键应用 用户身份, @ Analytics.Measure:是 @ Aggregation.default:#COUNT_DISTINCT @ Aggregation.referenceElement:['userID'] 1作为用户数:整数 };
没有发生聚集。 " usercount"始终将1作为值。
接下来,我尝试了SQL方式。
从演示中选择实体Actions1作为动作{ 关键应用 用户身份, 计数(不同的用户ID)作为用户计数 }按应用分组
现在我收到一条错误消息,提示尚不支持函数中的 DISTINCTCDS(
除了此处的参考文献外,CAP文档没有任何帮助。 https://cap.cloud.sap/docs/guides/generic-providers#aggregation
有没有一种方法可以实现我需要的汇总?
我最终创建了"自定义逻辑",在这里我获取未聚合的数据并进行聚合。
嗨, Hans-Joachim Both ,
也许您可以帮忙吗?
感谢和问候,
David
countdistinct根本不是HANA函数-但它不会引发错误(!),并且将1:1转换为。 hdbcds。 通过后处理,我的意思是使用诸如sed之类的命令行工具,并在生成的.hdbcds中将countdistinct(再次替换为count(distinct,以准备部署)。
哇... countdistinct很奇怪。 考虑到自宣布为GA以来已超过18个月,预期CAP将支持此功能。
我也有同样的问题。不支持COUNT(distinct ...)确实很烦人。 在TechEd 2019上与Daniel Hutzel进行了交谈,他惊讶地发现它超出了范围,并基本上称其为错误/缺失功能。
它还可以防止人们将.hdbcds迁移到.cds ... .hdbcds支持count(distinct ...)!
我已经考虑过将代码更改为countdistinct(...),该代码将1:1转换为生成的.hdbcds,然后通过在部署之前将countdistinct(替换为count(distinct)来对.hdbcds进行后处理。
感谢您的答复。我不知道countdistinct。.cds支持它吗?与count(DISTINCT)有什么不同?
一周热门 更多>