您如何在计算视图中检查"投影"或"聚合"是否为空?

2020-08-23 02:53发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 您如何在计算视图...

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

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


大家好,

您如何在计算视图中检查"投影"或"聚合"是否为空? 我想检查一下,如果表A为空,那么我只会从表B中获取所有值。但是,如果表A不为空,那么我将进行LEFT OUTER JOIN。

谢谢。

输了

(32.4 kB)
付费偷看设置
发送
13条回答
奄奄一息的小鱼
1楼-- · 2020-08-23 03:14

是的,但我认为它在相同条件下对用户Y和Z不起作用?

歪着头看世界
2楼-- · 2020-08-23 03:01

嗨,

在表a和表b之间创建一个并集。

Iit将合并两个表数据。 如果表为空,则将获取表b的数据,否则

将a和b的数据合并而没有重复。

感谢

jovirus
3楼-- · 2020-08-23 03:18

应用联合如果表A有值,您会得到什么结果?

如果可能,请共享一些相同的样本数据。

请同时参考以下内容-

https://answers.sap.com/ Questions/702624/hana-calculation-view-conditional-join.html

https://stackoverflow.com/questions/55265534/ sap-hana-conditional-left-outer-join

谢谢

渐行渐远_HoldOn
4楼-- · 2020-08-23 03:16

您好,

不确定我是否正确理解了您的要求,但这是我的主意:


/*获取存在于TABLE_A中的记录,然后将它们与TABLE_B连接起来*/


 选择
 IFNULL(B.COMPCODE,A.COMPCODE)作为COMPCODE,
 IFNULL(B.CUSTOMER,A.CUSTOMER)作为客户,
 IFNULL(B.MATERIAL,A.MATERIAL)作为材料,
 IFNULL(B.CALMONTH,A.CALMONTH)作为CALMONTH,
 IFNULL(B.QTY,A.QTY)作为数量
 从
 " TABLE_A" A
 在A.FIELD1上左联接" TABLE_B" B = B.FIELD1

 联盟

/*获取TABLE_A中缺少的记录,但TABLE_B中存在*/

 选择
 COMPCODE,
 顾客,
 材料,
 卡尔蒙特
 数量
 从
 " TABLE_B" B
 哪里
 不存在(从A.FIELD1 = B.FIELD1的" TABLE_A"中选择*)
 
clasier
5楼-- · 2020-08-23 03:20

您好 SESHA P Konrad Zaleski

最好在脚本视图或图形视图中使用它吗?

这是我的示例数据。/p>

-------------------- -------------------------------------------------- ---------------------------------------------

< p>

------------------------ -------------------------------------------------- -----------------------------------------

- -------------------------------------------------- -------------------------------------------------- -------------

------------------------------ -------------------------------------------------- -----------------------------------

假设我是用户X, 我可以访问的数据应该是COMPCODE = A且CUSTOMER = 100和200。

-------------------------------------- -------------------------------------------------- ---------------------------

如果我是用户Y,则可以访问ALL DATA(无限制)。 空白表示全部。

--------------- -------------------------------------------------- --------------------------------------------------

对于用户Z,我可以访问COMPCODE = B并且CUSTOMER = ALL。

谢谢。

输掉

宇峰Kouji
6楼-- · 2020-08-23 03:23
接下来要做什么?
 

我不知道;-),这不是您在等待用户X吗?

一周热门 更多>