ABAP CDS视图聚合问题

2020-09-01 11:31发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 使用ABAP CDS视图...

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

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


嗨,

使用ABAP CDS视图进行聚合。 我已将cds视图示例创建为

@ AbapCatalog.sqlViewName:'YFLIGHT1V'

@ AbapCatalog.compiler.compareFilter:真

@ AccessControl.authorizationCheck:#检查

@ Analytics.dataCategory:#CUBE

@ EndUserText.label:'测试'

将视图YFLIGHT1定义为从sflight中选择

{香芹籽,

一致

fldate,

@DefaultAggregation:#SUM

价格为价格}

消费视图为

@ AbapCatalog.sqlViewName:'YFLIGHT2V'

@ AbapCatalog.compiler.compareFilter:真

@ AccessControl.authorizationCheck:#检查

@ EndUserText.label:'测试'

@ Analytics.query:是

@ VDM.viewType:#CONSUMPTION

将视图YFLIGHT2定义为从YFLIGHT1中选择

{香芹,

一致,

fldate,

价格}

在编中,sql语句为

从yflight2选择carrid,connid,价格

插入表@data(lt_flight)。

我期望以carrid&connid作为价格组之和的结果,但它是以carrid,connid,flate,price来获取价格的总和。

CUBE类型的HANA计算视图具有类似的设置和程序中的类似select语句,将以carrid&connid的价格组总和给出我想要的结果。

请帮助我如何在ABAP CDS视图中实现相同的目标。

谢谢

草皮

付费偷看设置
发送
10条回答
代楠1984
1楼-- · 2020-09-01 12:05

您好 Prasad Ganta

仅Odata服务(SADL层) 或BW Analytical引擎框架可以自动为您生成聚合,否则您将需要自己手动进行聚合,因为SELECT查询不知道如何解释注释。 通过 S Nalluri查看评论

是这样做的方法。

谢谢

Mahesh

spaceman01
2楼-- · 2020-09-01 12:25
 @ AbapCatalog.sqlViewName:'YFLIGHT1V'
 @ AbapCatalog.compiler.compareFilter:是
 @ AccessControl.authorizationCheck:#检查
 @ Analytics.dataCategory:#CUBE
 @ EndUserText.label:'测试'
 将视图YFLIGHT1定义为从sflight中选择
 {carrid,
 纵容
 长笛
 @DefaultAggregation:#SUM
 价格即价格}


 消费视图为


 @ AbapCatalog.sqlViewName:'YFLIGHT2V'
 @ AbapCatalog.compiler.compareFilter:是
 @ AccessControl.authorizationCheck:#检查
 @ EndUserText.label:'测试'
 @ Analytics.query:是
 @ VDM.viewType:#CONSUMPTION
 将视图YFLIGHT2定义为从YFLIGHT1中选择
 {carrid,
 纵容
 长笛
 价钱 }


 在编中,sql语句为


 选择康乃馨,connid,价格从yflight2
 插入表@data(lt_flight)。




 
Climb_Ma
3楼-- · 2020-09-01 12:27

Hello Prasad,

在下面的博客中查看有关聚合的信息,它可能会对您有所帮助。

https://blogs.sap.com/2019/10/06/aggregation-using-cds-view-for-any-given-slice-and-dice-in -odata-part-1 /

致谢

Abhijeet kankani

四川大学会员
4楼-- · 2020-09-01 12:20

您需要在选择查询中使用按功能分组。

选择carrid,connid,sum(price)作为价格
   来自yflight2
   到表@data(lt_flight)
   康瑞德集团的一致。
 
我是小鹏鹏啊
5楼-- · 2020-09-01 12:28

Mahesh,

我正在将HANA计算视图功能复制到ABAP CDS视图。 这将作为OData发布,供FIORI元素列表报告应用程序使用。

可以说,带有CUBE的HANA计算视图具有SFLIGHT中的所有字段。

当我在视图上做出选择语句时,结果始终是所选字段的总和(价格)组。 不必在select查询中指定明确的SUM(价格)和按字段分组。

我可以声明为

选择carrid,connid,价格

选择香菜,connind,flate,价格

我正在尝试从ABAP CDS视图实现相同的目标。

hengyuye
6楼-- · 2020-09-01 12:09

我不知道它能否解决它,但您可以尝试使用@ AnalyticsDetails.query.axis ...吗?

一周热门 更多>