ABAP-CDS销售订单关联交货单物料凭证

@AbapCatalog.sqlViewName: 'ZVSD_VBAP_DVR01'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: '销售订单关联交货单关联物料凭证'
define view ZVSD_VBAP_DVR01_CDS as

select from vbap as A
join vbak as D
on A.mandt = D.mandt
and A.vbeln = D.vbeln
left outer join lips as B
on A.mandt = B.mandt
and A.vbeln = B.vgbel
and A.posnr = B.vgpos
left outer join nsdm_v_mseg as C
on B.mandt = C.mandt
and B.vbeln = C.vbeln_im
and B.posnr = C.vbelp_im
and C.xauto = ''
{
A.vbeln,
A.posnr,
A.matnr,
A.kwmeng,
A.lsmeng,
A.vrkme,
A.uepos,
A.werks,
D.vkorg,
C.bwart,
B.vbeln as LS_VBELN,
B.posnr as LS_POSNR ,
B.lfimg as LS_LFIMG,
B.vrkme as LS_vrkme,
B.umvkz as LS_UMVKZ,
B.umvkn as LS_UMVKN,
B.meins as LS_MEINS,

B.shkzg as LS_SHKZG,
C.mblnr as MS_MBLNR,
C.mjahr as MS_MJAHR,
C.zeile as MS_ZEILE,
C.werks as MS_WERKS,
C.lgort as MS_LGORT,
C.charg as MS_CHARG,
C.shkzg as MS_SHKZG,
C.menge as MS_MENGE,
case C.shkzg
when 'S' then C.menge* -1
else C.menge
end as MS_MENGE_SH,
C.meins as MS_MEINS,

case C.shkzg
when 'S' then C.erfmg* -1
else C.erfmg
end as MS_ERFMG_SH,

C.erfme as MS_ERFME

}
where D.vkorg <> '2200'

union

select from vbap as A
join vbak as D
on A.mandt = D.mandt
and A.vbeln = D.vbeln
left outer join lips as B
on A.mandt = B.mandt
and A.vbeln = B.vgbel
and A.posnr = B.vgpos
left outer join nsdm_v_mseg as C
on B.mandt = C.mandt
and B.vbeln = C.vbeln_im
and B.posnr = C.vbelp_im
and C.xauto = ''
{
A.vbeln,
A.posnr,
A.matnr,
A.kwmeng,
A.lsmeng,
A.vrkme,
A.uepos,
A.werks,
D.vkorg,
C.bwart,
B.vbeln as LS_VBELN,
B.posnr as LS_POSNR ,
B.lfimg as LS_LFIMG,
B.vrkme as LS_vrkme,
B.umvkz as LS_UMVKZ,
B.umvkn as LS_UMVKN,
B.meins as LS_MEINS,

B.shkzg as LS_SHKZG,
C.mblnr as MS_MBLNR,
C.mjahr as MS_MJAHR,
C.zeile as MS_ZEILE,
C.werks as MS_WERKS,
C.lgort as MS_LGORT,
C.charg as MS_CHARG,
C.shkzg as MS_SHKZG,
C.menge as MS_MENGE,
case C.shkzg
when 'S' then C.menge* -1
else C.menge
end as MS_MENGE_SH,
C.meins as MS_MEINS,

case C.shkzg
when 'S' then C.erfmg* -1
else C.erfmg
end as MS_ERFMG_SH,

C.erfme as MS_ERFME

}
where D.vkorg = '2200'
and ( C.bwart <> '601' and C.bwart <> '602' )

 

posted @ 2021-12-07 10:04  東東東東  阅读(236)  评论(0编辑  收藏  举报