错误的结果从HANA DB上的CDS离开外部联接

2020-09-29 17:28发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)系统: SAP ERP 6....

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

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


系统:

SAP ERP 6.0/EHP7 for SAP ERP 6.0

SAP NETWEAVER 7.4

HANA DB版本1.00.122.05.1481577062

软件组件版本支持软件包的补丁程序级别

SAP内核7.45 64位UNICODE SP310 000310

目前,我正面临一个特殊的问题。 我在 service.sap.com 上进行搜索,发现了类似的问题,但都与非HANA- 数据库。

问题。

我已经建立了一个CDS,并在MARA和MSEG之间建立了连接。 联接是LEFT OUTER JOIN。

但是,结果似乎是一个INNER JOIN:左表MARA具有条目,而右表MSEG没有条目。 结果是CDS没有返回记录。

定义视图Zcds_Artikel_Omzet
 带有参数p_date:abap.dats

 作为精选的不同mara.matnr,mara.mtart,mara.mstae,mara.mstde,mara.lvorm,mara.attyp,mara.satnr,
     case mseg.bwart当'251'然后''else'X'以verwerken结尾时

 来自mara as mara
                   
 左外连接mseg作为mara.matnr = mseg.matnr上的mseg
 mseg.mblnr = mkpf.mblnr上的左外部连接mkpf和
                         mseg.mjahr = mkpf.mjahr

 其中mkpf.bldat> = $ parameters.p_date
 

对于某些材料(没有MSEG记录),无论是否添加DISTINCT,都不会返回结果。 我至少希望MARA提供的细节像通常的左外连接会提供的那样。

我什至尝试替换

其中mkpf.bldat> = $ parameters.p_date 

其中mseg.budat_mkpf> = $ parameters.p_date 

但是结果保持不变:找不到记录。

在要返回的字段列表中包含BSEG字段也导致找到0条记录。

我已经在纯ABAP中重建了选择,但是即使在这里也没有记录返回。

还有其他人遇到过同样的问题吗? 如果是这样,您是如何解决的?

此致

Guus