我有一个CDS视图ZCDS_XXX:
define view ZCDS_XXX
as select distinct from XXX
association [1..*] to ZCDS_YYY as _YYY ...
{
key a,
_YYY
} ...我有一个DCL ZDCL_XXX:
define role ZDCL_XXX{
grant
select
on
ZCDS_XXX
where
( _YYY.ProfitCenter ) = aspect pfcg_auth( K_PCAR_REP, PRCTR );
}目标是返回CDS
ZCDS_XXX的条目
其中,用户具有来自相关利润中心列表的至少一个授权。
一切都很好..。
但是,当DCL处于活动状态时,CDS视图ZCDS_XXX视图会返回我重复的键。
尽管使用DISTINCT (从结果列表中删除重复项)。
好像DCL在选择之后进行处理,并更改了我的结果的基数>(
我想知道在DCL或CDS视图中是否存在避免重复的解决方案,并避免在SELECT DISTINCT中执行oSQL或删除重复的操作,例如,如果我在搜索帮助中使用CDS视图。
此外,如果您在DCL中有一个描述其行为或SQL语法的链接,我在文档中找不到多少.
非常感谢你的帮助!
发布于 2022-11-17 02:38:38
在CDS定义中,您可能需要一个从左到一个的连接,请尝试一下。在CDS选择的SQL运行时,如果使用来自关联实体的字段,基数将发挥重要作用。请阅读本博客以了解https://blogs.sap.com/2018/08/20/cardinality-of-association-in-cds-view/的一般解释
https://stackoverflow.com/questions/74433491
复制相似问题