CDS视图-使用重复键删除条目

2020-08-14 05:36发布

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

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


你好

有人知道是否可以从CDS视图中删除具有相同密钥的条目吗? Distinct或Group By实际上仅删除重复的条目,而不删除仅具有重复键的条目。 有没有办法只在关键字段上使用选择的" DISTINCT"?

感谢您和最诚挚的问候,

克里斯蒂娜

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

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


你好

有人知道是否可以从CDS视图中删除具有相同密钥的条目吗? Distinct或Group By实际上仅删除重复的条目,而不删除仅具有重复键的条目。 有没有办法只在关键字段上使用选择的" DISTINCT"?

感谢您和最诚挚的问候,

克里斯蒂娜

付费偷看设置
发送
5条回答
lukcy2020
1楼 · 2020-08-14 06:17.采纳回答

我认为我们可以使用"分组依据"和"具有计数"子句来删除重复的条目。

我是小鹏鹏啊
2楼-- · 2020-08-14 06:07

你好克里斯蒂娜,

我有同样的问题。

请提供解决方案的源代码吗?

悻福寶寶
3楼-- · 2020-08-14 06:01

我遇到了同样的问题,但是找到了解决方案。

我的要求是我必须从单据流(VBFA)中读取每个销售订单项目的计划发货日期,实际发货日期和交货创建日期,但只能读取第一个交货项目。

解决方案:

@ AbapCatalog.sqlViewName:'ZISODELDOCFLOW'
@ AccessControl.authorizationCheck:#NOT_REQUIRED
@ VDM.viewType:#BASIC
@ EndUserText.label:'关系销售订单交货'
定义视图 ZI_SODELDOCFLOW与$ projection.DeliveryDocument = _Del.DeliveryDocument
{
键vbfa.vbelv作为SalesDoc,
键vbfa.posnv的vbfa
关联[0..1]到I_DeliveryDocument的_Del不同 作为SalesDocItem,
键vbfa.vbeln作为DeliveryDocument,
min(vbfa.posnn)作为DeliveryItem,
min(_Del.PlannedGoodsIssueDate)作为PlannedGoodsIssueDate,
min(_Del.ActualGoodsMovementDate)作为ActualGoodsIssueDate br> min(_Del.CreationDate)作为DeliveryCreationDate
}
其中(vbfa.vbtyp_v ='C'或//ORDER
vbfa.vbtyp_v ='I')和//OR W/O CHANGE < br> vbfa.vbtyp_n ='J'//按vbfa.vbelv,
vbfa.posnv,
vbfa.vbeln

绿领巾童鞋
4楼-- · 2020-08-14 06:13

分组 我找到了解决方案。

我的要求是我必须从单据流(VBFA)中读取每个销售订单项目的计划发货日期,实际发货日期和交货创建日期,但只能读取第一个交货项目。

解决方案:

@ AbapCatalog.sqlViewName:'ZISODELDOCFLOW'
@ AccessControl.authorizationCheck:#NOT_REQUIRED
@ VDM.viewType:#BASIC
@ EndUserText.label:'关系销售订单交货'
定义视图 ZI_SODELDOCFLOW与$ projection.DeliveryDocument = _Del.DeliveryDocument
{
键vbfa.vbelv作为SalesDoc,
键vbfa.posnv的vbfa
关联[0..1]到I_DeliveryDocument的_Del不同 作为SalesDocItem,
键vbfa.vbeln作为DeliveryDocument,
min(vbfa.posnn)作为DeliveryItem,
min(_Del.PlannedGoodsIssueDate)作为PlannedGoodsIssueDate,
min(_Del.ActualGoodsMovementDate)作为ActualGoodsIssueDate br> min(_Del.CreationDate)作为DeliveryCreationDate
}
其中(vbfa.vbtyp_v ='C'或//ORDER
vbfa.vbtyp_v ='I')和//OR W/O CHANGE < br> vbfa.vbtyp_n ='J'//按vbfa.vbelv,
vbfa.posnv,
vbfa.vbeln

Baoming ROSE
5楼-- · 2020-08-14 06:18

分组 和进行过滤的group by子句,例如,如果我不想让业务伙伴重复
然后我必须使用

min(tb003t.role)作为xyz,并且我不应该在group子句中使用tb003t.role,这也是上面代码的工作方式。

一周热门 更多>