我正在修改我之前的场景,我想知道在销售订单中放置的序列详细信息与在交货收据中填写的序列详细信息订单是否正确。下面有三个表,(1)TABLE A - 这是我在执行下面的脚本时的当前输出。(2) 表 B - 由于序列详细信息,我想加入的另一个表(表 B)。(3) TABLE DESIRED 输出 - 我想实现.. 考虑到:如果 basetype = 17,那么它应该在另一列 (SO_SERIAL) 中插入序列
,如果 basetype = 15,那么它应该在另一列 (DR_SERIAL) 中插入序列详细信息。通过这个,我能够分析 SO 中使用的序列与 DR 中使用的不同/相同。
谢谢你的帮助。
select a.CardCode 'BPNAME', c.itemcode, a.DocEntry 'SO_DOCENTRY', a.DocNum 'SO Num', c.ObjType'SO_Btype',
b.docEntry 'DR_DOCENTRY',b.BaseRef 'DR_num',b.ObjType 'dr_type'
from ORDR a
LEFT join dln1 b on a.docentry = b.baseentry
left join RDR1 c on a.DocEntry = c.DocEntry
表 A。
BP ITEMCODE SO_DOCENTRY SO_NUM SO_BTYPE DR_DOCENTRY DR_NUM DR_TYPE
======================================================================================
CITALI TYB20001M 144900 20152733 17 130775 20152733 15
表 B。
SERIAL ITEMCODE BASEENTRY BASENUM BASETYPE QUANTITY CARDCODE
=====================================================================================
MCWF-12001-20120601 TYB20001M 144900 20152733 17 10.000000 CITALI
MBAL-13001-20130101 TYB20001M 130775 103073 15 5.000000 CITALI
期望的输出:
BP ITEMCODE SO_NUM SO_BTYPE SO_SERIAL DR_NUM DR_TYPE DR_SERIAL
============================================================================================
CITALI TYB20001M 20152733 17 MCWF-12001-20120601 20152733 15 AL-13001-20130101