ABAP CDS查看年度周计算

2020-08-24 22:32发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我正在尝试使用CDS视图...

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

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


你好

我正在尝试使用CDS视图选择过去52周的物料消耗。


我建立了一个视图,其中我具有每年的每周总计(YYYYWW)。

现在我尝试在过去52周内选择CDS。
因为您无法在where条件或联接/关联中使用计算,

我尝试使用

在scal_tt_date上构建视图
带参数
     @ Environment.systemField:#SYSTEM_DATE
     p_sy_date:abap.dats
 

但这很复杂。

(要计算上一年的值,我需要将char字段强制转换为int或dec->计算->强制转换回char->子字符串,然后与也需要强制转换的星期相结合...

 concat(substring(cast((cast(calendaryear as abap.dec(4,0))-1)as abap.char(8)),1,4),LPAD(cast((52-(cast(  date.calendarweek如abap.int4)-52))如abap.char(11)),2,'0')))如week52,

是否有更好的方法来执行此要求?

我还想知道嵌套的cast()函数是否与性能相关?

致谢

Fabian