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' )