如何在ABAP CDS中循环进行联接

2020-08-21 02:40发布

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

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


嗨,

我需要将matdoc表连接到mbewh表,并将两个表中的matnr(物料编号)连接起来,将matdoc.werks(工厂)连接到mbewh.bwkey,与此同时,我需要将matdoc.budat的年和月部分传递给lfgja (发布年份)和mbmonh中的lfmon(发布月份)(预算给出了日历日期,而lfgja/lfmon根据财务年度分别发布了年和月,但我在以前的cds视图中进行了转换),并从mbewh中获取了salk3和lkmon。 到目前为止,如果我将budat换成字符串以获取月份和年份,则很简单。

现在的问题是,mbewh表中并非所有lfmon/lfgja组合的值都存在。 在这种情况下,我需要找到最后一个先前的条目,其中将填入lfmon/lfgja组合,并获取这些值。

通常在编码中将使用循环。 有没有办法在ABAP CDS中复制它?

我观察到的是,由于lfmon和lfgja是联接,因此无法在进行联接的视图中进行计算,并且如果不将lfmon和lfgja添加到联接中,那么所有可能的值都会被引入,这意味着 引入不必要和不正确的数据。

那么我该如何创建一个循环,该循环将使我获得发布年份和月份的最后填充值以获取我要查找的各个值?

此致

Tejaswini

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

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


嗨,

我需要将matdoc表连接到mbewh表,并将两个表中的matnr(物料编号)连接起来,将matdoc.werks(工厂)连接到mbewh.bwkey,与此同时,我需要将matdoc.budat的年和月部分传递给lfgja (发布年份)和mbmonh中的lfmon(发布月份)(预算给出了日历日期,而lfgja/lfmon根据财务年度分别发布了年和月,但我在以前的cds视图中进行了转换),并从mbewh中获取了salk3和lkmon。 到目前为止,如果我将budat换成字符串以获取月份和年份,则很简单。

现在的问题是,mbewh表中并非所有lfmon/lfgja组合的值都存在。 在这种情况下,我需要找到最后一个先前的条目,其中将填入lfmon/lfgja组合,并获取这些值。

通常在编码中将使用循环。 有没有办法在ABAP CDS中复制它?

我观察到的是,由于lfmon和lfgja是联接,因此无法在进行联接的视图中进行计算,并且如果不将lfmon和lfgja添加到联接中,那么所有可能的值都会被引入,这意味着 引入不必要和不正确的数据。

那么我该如何创建一个循环,该循环将使我获得发布年份和月份的最后填充值以获取我要查找的各个值?

此致

Tejaswini

付费偷看设置
发送
2条回答
木偶小白
1楼-- · 2020-08-21 03:43

你好Tejaswini,

您找到解决方案了吗?

此致

Harit Bhasin

你好Tejaswini,

我加入了scal_tt_date并限制了年份,以保持较少的记录数。

一周热门 更多>