因為ABAP新語法支持標(biāo)準(zhǔn)SQL語法。所以可以使用case when直接內(nèi)表取值實現(xiàn)轉(zhuǎn)換
注意AS后的別名要跟動態(tài)內(nèi)表<fs_table>內(nèi)的動態(tài)字段名字保持一致,否則無法賦值
enab可直接更換為內(nèi)表
select werks,
matnr,
sum( case when lfdat = '20201028' then menge - bsmng end ) as D20201028,
sum( case when lfdat = '20201029' then menge - bsmng end ) as D20201029,
sum( case when lfdat = '20201030' then menge - bsmng end ) as D20201030,
sum( case when lfdat = '20201031' then menge - bsmng end ) as D20201031,
sum( case when lfdat <= '20201107' and lfdat >= '20201101' then menge - bsmng end ) as D20201101,
sum( case when lfdat <= '20201114' and lfdat >= '20201108' then menge - bsmng end ) as D20201108
from eban
where matnr <> ' '
and werks = '1010'
and loekz = ' '
group by werks,matnr

1605575974(1).jpg

1605576109(1).jpg