INSERT INTO MATERIALDELIVERY(SITENAME, DELIVERYNAME, DELIVERYTYPE, DELIVERYSTATE)
VALUES (#{dto.siteName}, #{dto.deliveryName}, #{dto.deliveryType}, #{state})
INSERT ALL
INTO MATERIALDELIVERYRECEIVE (RECEIVEREQUESTNAME, DELIVERYNAME, DELIVERYNUM, MATERIALSPECNAME, RECEIVEREQUESTDETAILNAME) VALUES (#{item.receiveRequestName}, #{item.deliveryName}, #{item.deliveryNum}, #{item.materialSpecName}, #{item.receiveRequestDetailName})
SELECT * FROM dual
SELECT DISTINCT m.SITENAME, m.RECEIVEREQUESTNAME, m.RECEIVEREQUESTTYPE, m.ORDERDATE, m.SUPPLIERNO,
m.LASTEVENTNAME, m.LASTEVENTTIME, m.LASTEVENTUSER, m.LASTEVENTCOMMENT, s.SUPPLIERNAME,
STOCKORGNO ERPFACTORY, o.ORGNAME,
CASE WHEN m.RECEIVEREQUESTSTATE = 'Completed' THEN '完成' ELSE '未完成' END RECEIVEREQUESTSTATE,
m.OEMSITENAME, m.OEMSITEINCHARGE, m.LASTEVENTTIMEKEY, m.SYSTEMTYPE, m.PURCHASEORDERGROUP
FROM MATERIALRECEIVEREQUEST m
LEFT JOIN SUPPLIER s ON s.SUPPLIERNO = m.SUPPLIERNO
LEFT JOIN MATERIALRECEIVEREQUESTDETAIL d ON m.RECEIVEREQUESTNAME = d.RECEIVEREQUESTNAME
LEFT JOIN MATERIALSPEC ms ON d.MATERIALSPECNAME = ms.MATERIALSPECNAME
LEFT JOIN ORG o ON STOCKORGNO = o.ORGNO
WHERE m.SITENAME = #{dto.siteName}
ANd ms.is_batch = #{isBatch}
AND m.RECEIVEREQUESTTYPE IN
#{type}
AND m.STOCKORGNO = #{dto.erpFactory}
AND m.RECEIVEREQUESTNAME LIKE '%'||#{dto.receiveRequestName}||'%'
AND m.RECEIVEREQUESTSTATE = #{dto.receiveRequestState}
AND ms.MATERIALSPECNAME LIKE '%'||#{dto.materialSpecName}||'%'
AND ms.DESC_CN LIKE '%'||#{dto.descCn}||'%'
AND m.ORDERDATE BETWEEN TO_DATE( #{dto.fromDate}, 'YYYY/MM/DDHH24MISS' )
AND TO_DATE( #{dto.toDate}, 'YYYY/MM/DDHH24MISS' )
AND m.SUPPLIERNO LIKE '%'||#{dto.supplierNo}||'%'
AND ms.IS_BATCH = #{isBatch}
WITH AA AS (
SELECT m5.RECEIVEREQUESTNAME, m5.MATERIALSPECNAME, m5.SDK_ID, m5.phase, SUM( m5.MATERIALQUANTITY ) QTY
FROM MATERIALPACKING m5
WHERE m5.STOCKSTATE IN ( 'Stocked', 'StockOut' )
AND m5.RECEIVEREQUESTNAME in
#{name}
GROUP BY m5.MATERIALSPECNAME, m5.RECEIVEREQUESTNAME, m5.SDK_ID, m5.phase
),
BB AS (
SELECT m5.RECEIVEREQUESTNAME, m5.MATERIALSPECNAME, m5.SDK_ID, m5.phase, SUM( m5.MATERIALQUANTITY ) QTY
FROM MATERIALPACKING m5
WHERE m5.STOCKSTATE = 'Created'
AND m5.RECEIVEREQUESTNAME in
#{name}
GROUP BY m5.MATERIALSPECNAME, m5.RECEIVEREQUESTNAME, m5.SDK_ID, m5.phase
),
MAIN AS (
SELECT m.MATERIALSPECNAME,
SUM( m.REQUESTQUANTITY ) REQUESTQUANTITY,
SUM( m.RECEIVEDQUANTITY ) RECEIVEDQUANTITY,
SUM( m.REQUESTQUANTITY - m.RECEIVEDQUANTITY ) AS RECEIVEDQUANTITY2,
SUM( m.REQUESTQUANTITY - m.RECEIVEDQUANTITY ) AS MINUSQTY
FROM MATERIALRECEIVEREQUESTDETAIL m
WHERE m.RECEIVEREQUESTNAME in
#{name}
GROUP BY m.MATERIALSPECNAME
)
,DELIVERY AS (
SELECT sum(md.DELIVERYNUM) DELIVERYNUM, md.MATERIALSPECNAME MATERIALSPECNAME
FROM MATERIALDELIVERYRECEIVE md
WHERE md.DELIVERYNAME = #{deliveryName}
and md.RECEIVEREQUESTNAME IN
#{name}
GROUP BY md.MATERIALSPECNAME
)
SELECT distinct MAIN.RECEIVEDQUANTITY, MAIN.MINUSQTY,
DELIVERY.DELIVERYNUM REQUESTQUANTITY,
MAIN.REQUESTQUANTITY REQUESTQUANTITY,
TO_CHAR( SYSDATE, 'YYYY-MM-DD' ) RECEIVETIME, TO_CHAR( SYSDATE, 'YYYY-MM-DD' ) MAKEDATE, '1' RECEIVEREQUESTDETAILNAME, '是' IS_BATCH,
m.MATERIALSPECNAME, m.SITENAME, m.ERPLOCATION, m.LOCATIONNAME, m.MATERIALUNIT, m.SDK_ID,
m.REMARK REMARK, m.SALESMAN SALESPERSON, m.SALESASSISTANT CAREER_ASSISTANCE, m.BUSINESSDIVISION BUSINESS_UNIT,
-- m2.STOCKORGNO AS ERPFACTORY,
COALESCE(m2.STOCKORGNO, m.ERPFACTORY) AS ERPFACTORY,
m2.SUPPLIERNO,m.POCATEGORY,
m3.WIDTH AS DESCRIPTION, m3.MATERIALUNITDESC, m3.WIDTH SPECNAME, m3.PHASE, m3.DESC_CN, DECODE( m3.IS_BATCH, 'Y', '是' , '否' ) IS_BATCH,
CASE WHEN m3.EXPIRATION_RULES = '0' THEN '入厂保质期' WHEN m3.EXPIRATION_RULES = '1' THEN '出厂保质期' ELSE '未定义' END AS REPLACED_VALUE,
DECODE( m4.IQCFLAG, 'Y', '是', '否' ) IQCFLAG,
be.DESCRIPTION AS ERPLOCATION2, o.ORGNAME AS ERPFACTORY2, sss.DESCRIPTION AS LOCATIONNAME2,
NVL( BB.QTY, 0 ) CREATEQTY, NVL( AA.QTY, 0 ) STOCKINQTY
FROM MAIN
LEFT JOIN MATERIALRECEIVEREQUESTDETAIL m ON MAIN.MATERIALSPECNAME = m.MATERIALSPECNAME
LEFT JOIN MATERIALRECEIVEREQUEST m2 ON m.RECEIVEREQUESTNAME = m2.RECEIVEREQUESTNAME
LEFT JOIN MATERIALSPEC m3 ON m.MATERIALSPECNAME = m3.MATERIALSPECNAME
LEFT JOIN BS_MATERIALFACTORY m4 ON m.MATERIALSPECNAME = m4.MATERIALSPECNAME AND m.ERPFACTORY = m4.ERPFACTORY
LEFT JOIN SUPPLIER S ON m2.SUPPLIERNO = S.SUPPLIERNO
LEFT JOIN BS_ERPLOCATION be ON m.ERPLOCATION = be.ERPLOCATIONNAME
LEFT JOIN ORG o ON o.ORGNO = m2.STOCKORGNO
LEFT JOIN STORAGESPEC sss ON m.LOCATIONNAME = sss.STORAGENAME
LEFT JOIN AA ON AA.RECEIVEREQUESTNAME = m.RECEIVEREQUESTNAME
AND AA.MATERIALSPECNAME = m.MATERIALSPECNAME
AND AA.SDK_ID = m.SDK_ID AND AA.PHASE = m3.PHASE
LEFT JOIN BB ON BB.RECEIVEREQUESTNAME = m.RECEIVEREQUESTNAME
AND BB.MATERIALSPECNAME = m.MATERIALSPECNAME
AND COALESCE(BB.SDK_ID, 'N/A') = COALESCE(m.SDK_ID, 'N/A')
AND COALESCE(BB.PHASE, 'N/A') = COALESCE(m3.PHASE, 'N/A')
INNER JOIN DELIVERY ON DELIVERY.MATERIALSPECNAME = m.MATERIALSPECNAME
WHERE ( m2.RETURNFLAG IS NULL OR m2.RETURNFLAG != 'Y' )
AND m.RECEIVEREQUESTNAME in
#{name}
AND m.SITENAME = #{siteName}
AND (m.DELETEDETAILFLAG IS NULL OR m.DELETEDETAILFLAG !='L')
AND m3.IS_BATCH != 'N'
-- ZLR1 销售退货类型
WITH MAIN AS (
SELECT m.MATERIALSPECNAME,
SUM( m.REQUESTQUANTITY ) REQUESTQUANTITY,
SUM( m.RECEIVEDQUANTITY ) RECEIVEDQUANTITY,
SUM( m.REQUESTQUANTITY - m.RECEIVEDQUANTITY) AS ThisAcceptNumber
FROM MATERIALRECEIVEREQUESTDETAIL m
WHERE m.RECEIVEREQUESTNAME in
#{name}
GROUP BY m.MATERIALSPECNAME
)
,DELIVERY AS (
SELECT sum(md.DELIVERYNUM) DELIVERYNUM, md.MATERIALSPECNAME MATERIALSPECNAME
FROM MATERIALDELIVERYRECEIVE md
WHERE md.DELIVERYNAME = #{deliveryName}
and md.RECEIVEREQUESTNAME IN
#{name}
GROUP BY md.MATERIALSPECNAME
)
SELECT distinct MAIN.RECEIVEDQUANTITY, MAIN.ThisAcceptNumber,
DELIVERY.DELIVERYNUM REQUESTQUANTITY,
MAIN.REQUESTQUANTITY REQUESTQUANTITY,
m3.DESCRIPTION, be.DESCRIPTION AS ERPLOCATION2, m.ERPLOCATION, o.ORGNAME AS ERPFACTORY2,
m2.STOCKORGNO AS ERPFACTORY, sss.DESCRIPTION AS LOCATIONNAME2, m.LOCATIONNAME, m2.SUPPLIERNO,
ss.SPECNAME, m.PHASE, m3.DESC_CN, m.MATERIALSPECNAME,
m.MATERIALUNIT, MM.FNAME MATERIALUNITDESC, m.SDK_ID, m.PHASE, m.SITENAME,
DECODE(m3.IS_BATCH, 'Y', '是' , '否') IS_BATCH, DECODE(m3.IQCFLAG, 'Y', '是' ,'否') IQCFLAG,
CASE WHEN m3.EXPIRATION_RULES = '0' THEN '不遵守有效期管理'
WHEN m3.EXPIRATION_RULES = '1' THEN '遵守有效期管理'
ELSE '未定义'
END AS REPLACED_VALUE
FROM MAIN
LEFT JOIN MATERIALRECEIVEREQUESTDETAIL m ON MAIN.MATERIALSPECNAME = m.MATERIALSPECNAME
LEFT JOIN MATERIALRECEIVEREQUEST m2 ON m.RECEIVEREQUESTNAME = m2.RECEIVEREQUESTNAME
LEFT JOIN MATERIALSPEC m3 ON m.MATERIALSPECNAME = m3.MATERIALSPECNAME
LEFT JOIN SDK_SPEC ss ON m.SDK_ID = ss.SDK_ID
LEFT JOIN MATERIALUNIT MM ON MM.FNUMBER = m.MATERIALUNIT
LEFT JOIN BS_ERPLOCATION be ON m.ERPLOCATION = be.ERPLOCATIONNAME
LEFT JOIN ORG o ON o.ORGNO = m2.STOCKORGNO
LEFT JOIN STORAGESPEC sss ON m.LOCATIONNAME = sss.STORAGENAME
INNER JOIN DELIVERY ON DELIVERY.MATERIALSPECNAME = m.MATERIALSPECNAME
WHERE m.RECEIVEREQUESTNAME in
#{name}
AND m.SITENAME = #{siteName}
AND (m.REQUESTQUANTITY - m.RECEIVEDQUANTITY) > 0
AND (m2.RETURNFLAG IS NULL OR m2.RETURNFLAG != 'Y')
AND (m3.IS_BATCH IS NULL OR m3.IS_BATCH != 'Y')
SELECT ROWNUM SEQ, TTT.*
FROM (
SELECT A.RECEIVEREQUESTNAME, A.SITENAME, A.MATERIALPACKINGNAME, A.MATERIALSPECNAME, A.ERPLOCATION, A.ERPFACTORY,
A.LOCATIONNAME, A.CHARGE, A.REMARK, B.DESC_CN, B.DESCRIPTION, A.SDK_ID, SS.SPECNAME, A.PHASE,
A.MATERIALQUANTITY, M.FNAME UNIT, BE.DESCRIPTION ERPLOCATIONDESC, S.DESCRIPTION LOCATIONNAMEDESC,
A.ERPFACTORY ERPFACTROY, o.ORGNAME ERPFACTROYDESC, A.SUPPLIERNAME SUPPLIERNO
FROM MATERIALPACKING A
LEFT JOIN MATERIALSPEC B ON A.MATERIALSPECNAME = B.MATERIALSPECNAME
LEFT JOIN SDK_SPEC SS ON A.SDK_ID = SS.SDK_ID
LEFT JOIN BS_ERPLOCATION BE ON BE.ERPLOCATIONNAME = A.ERPLOCATION
LEFT JOIN STORAGESPEC S ON S.STORAGENAME = A.LOCATIONNAME
LEFT JOIN ORG o ON o.ORGNO = A.ERPFACTORY
LEFT JOIN MATERIALUNIT M ON M.FNUMBER = A.UNIT
WHERE A.SITENAME = #{siteName}
AND A.RECEIVEREQUESTNAME = #{documentName}
AND A.STOCKSTATE = 'Created'
ORDER BY A.MATERIALSPECNAME, A.SDK_ID, A.PHASE
) TTT
select SITENAME, DELIVERYNAME, DELIVERYTYPE, DELIVERYSTATE
from MATERIALDELIVERY
WHERE SITENAME = #{dto.siteName}
AND DELIVERYNAME = #{dto.documentName}
SELECT SITENAME, RECEIVEREQUESTNAME, RECEIVEREQUESTTYPE, PURCHASEORDERGROUP, RECEIVEREQUESTSTATE, SUPPLIERNO,
OEMSITENAME, OEMSITEINCHARGE, SYSTEMTYPE, LASTEVENTNAME, LASTEVENTTIMEKEY, LASTEVENTTIME, LASTEVENTUSER,
LASTEVENTCOMMENT, ERPPONAME, SAVEREASON, RESPPERSON, RESPDEPART, SOLVETIME, PASSSTATE, WORKER, SDK_ID,
ERPID, REMARK, PURCHASER, PURORGNO, ORDERDATE, CLOSERUSER, CLOSEDATE, STOCKORGNO, RETURNFLAG,
RECEIVEREQUESTDETAILTYPE, ERPLOCATION, PRODUCTDEPTNO, SOURCEBILLID, EFFECTIVESTARTTIME, EFFECTIVEENDTIME
FROM MATERIALRECEIVEREQUEST
WHERE SITENAME = #{dto.siteName}
AND RECEIVEREQUESTNAME = #{dto.documentName}
SELECT md.DELIVERYNAME, md.DELIVERYNUM, md.RECEIVEREQUESTNAME, md.MATERIALSPECNAME, md.RECEIVEREQUESTDETAILNAME
FROM MATERIALDELIVERYRECEIVE md
WHERE md.DELIVERYNAME = #{dto.documentName}
SELECT m.SITENAME, m.RECEIVEREQUESTNAME, m.RECEIVEREQUESTTYPE, m.PURCHASEORDERGROUP, m.RECEIVEREQUESTSTATE, m.SUPPLIERNO,
m.OEMSITENAME, m.OEMSITEINCHARGE, m.SYSTEMTYPE, m.LASTEVENTNAME, m.LASTEVENTTIMEKEY, m.LASTEVENTTIME, m.LASTEVENTUSER,
m.LASTEVENTCOMMENT, m.ERPPONAME, m.SAVEREASON, m.RESPPERSON, m.RESPDEPART, m.SOLVETIME, m.PASSSTATE, m.WORKER, m.SDK_ID,
m.ERPID, m.REMARK, m.PURCHASER, m.PURORGNO, m.ORDERDATE, m.CLOSERUSER, m.CLOSEDATE, m.STOCKORGNO, m.RETURNFLAG,
m.RECEIVEREQUESTDETAILTYPE, m.ERPLOCATION, m.PRODUCTDEPTNO, m.SOURCEBILLID, m.EFFECTIVESTARTTIME, m.EFFECTIVEENDTIME
FROM MATERIALRECEIVEREQUEST m, MATERIALDELIVERYRECEIVE md
WHERE m.SITENAME = #{dto.siteName}
AND md.DELIVERYNAME = #{dto.documentName}
AND m.RECEIVEREQUESTNAME = md.RECEIVEREQUESTNAME
SELECT receiveRequestName, receiveRequestDetailName
FROM MATERIALRECEIVEREQUESTDETAIL
WHERE RECEIVEREQUESTNAME = #{documentName}
AND MATERIALSPECNAME = #{materialSpec}
SELECT receiveRequestName, receiveRequestDetailName
FROM MATERIALDELIVERYRECEIVE
WHERE DELIVERYNAME = #{documentName}
AND MATERIALSPECNAME = #{materialSpec}
SELECT receiveRequestName, materialSpecName, requestQuantity, requestQuantity as deliveryNum, RECEIVEREQUESTDETAILNAME
FROM MATERIALRECEIVEREQUESTDETAIL
WHERE RECEIVEREQUESTNAME in
#{name}
order by RECEIVEREQUESTDETAILNAME
SELECT SITENAME, DELIVERYNAME, DELIVERYTYPE, DELIVERYSTATE
FROM MATERIALDELIVERY
WHERE SITENAME = #{dto.siteName}
AND DELIVERYNAME LIKE '%'||#{dto.deliveryName}||'%'
AND DELIVERYTYPE = #{dto.deliveryType}
AND DELIVERYSTATE = #{dto.deliveryState}
order by DELIVERYNAME
delete from MATERIALDELIVERY
where SITENAME = #{dto.siteName}
and DELIVERYNAME = #{dto.deliveryName}
delete from MATERIALDELIVERYRECEIVE
where DELIVERYNAME = #{dto.deliveryName}
UPDATE MATERIALDELIVERY SET DELIVERYSTATE = #{dto.deliveryState}
WHERE SITENAME = #{dto.siteName} AND DELIVERYNAME = #{dto.deliveryName}
WITH
AA AS (
SELECT
m5.RECEIVEREQUESTNAME,
m5.MATERIALSPECNAME,
SUM( m5.MATERIALQUANTITY ) QTY
FROM
MATERIALPACKING m5
WHERE
m5.STOCKSTATE IN ( 'Stocked', 'StockOut' )
AND m5.RECEIVEREQUESTNAME IN ( #{deliveryName} )
GROUP BY
m5.MATERIALSPECNAME,
m5.RECEIVEREQUESTNAME
),
BB AS (
SELECT
m5.RECEIVEREQUESTNAME,
m5.MATERIALSPECNAME,
SUM( m5.MATERIALQUANTITY ) QTY
FROM
MATERIALPACKING m5
WHERE
m5.STOCKSTATE = 'Created'
AND m5.RECEIVEREQUESTNAME IN ( #{deliveryName} )
GROUP BY
m5.MATERIALSPECNAME,
m5.RECEIVEREQUESTNAME
),
CC AS (
SELECT
m5.DELIVERYNAME RECEIVEREQUESTNAME,
m5.MATERIALSPECNAME ,
SUM( m5.DELIVERYNUM ) QTY
FROM
MATERIALDELIVERYRECEIVE m5
WHERE
m5.DELIVERYNAME IN ( #{deliveryName} )
GROUP BY
m5.DELIVERYNAME,
m5.MATERIALSPECNAME
),
DELIVERY AS (
SELECT DISTINCT DELIVERYNAME, md.MATERIALSPECNAME,
TO_CHAR( SYSDATE, 'YYYY-MM-DD' ) RECEIVETIME,
TO_CHAR( SYSDATE, 'YYYY-MM-DD' ) MAKEDATE,
'1' RECEIVEREQUESTDETAILNAME,
m.SITENAME,
m.ERPLOCATION,
m.LOCATIONNAME,
m.MATERIALUNIT,
m.SDK_ID,
m.REMARK REMARK,
m.SALESMAN SALESPERSON,
m.SALESASSISTANT CAREER_ASSISTANCE,
m.BUSINESSDIVISION BUSINESS_UNIT,
COALESCE( m2.STOCKORGNO, m.ERPFACTORY ) AS ERPFACTORY,
m2.SUPPLIERNO,
--m.POCATEGORY,
m3.WIDTH AS DESCRIPTION,
m3.MATERIALUNITDESC,
m3.WIDTH SPECNAME,
m3.PHASE,
m3.DESC_CN,
DECODE( m3.IS_BATCH, 'Y', '是', '否' ) IS_BATCH,
CASE WHEN m3.EXPIRATION_RULES = '0' THEN
'入厂保质期'
WHEN m3.EXPIRATION_RULES = '1' THEN
'出厂保质期' ELSE '未定义'
END AS REPLACED_VALUE,
DECODE( m4.IQCFLAG, 'Y', '是', '否' ) IQCFLAG,
be.DESCRIPTION AS ERPLOCATION2,
o.ORGNAME AS ERPFACTORY2,
sss.DESCRIPTION AS LOCATIONNAME2 FROM MATERIALDELIVERYRECEIVE md
LEFT JOIN MATERIALRECEIVEREQUEST m2 ON md.RECEIVEREQUESTNAME = m2.RECEIVEREQUESTNAME
LEFT JOIN MATERIALRECEIVEREQUESTDETAIL m ON md.RECEIVEREQUESTNAME = m.RECEIVEREQUESTNAME
AND md.RECEIVEREQUESTDETAILNAME = m.RECEIVEREQUESTDETAILNAME
LEFT JOIN MATERIALSPEC m3 ON md.MATERIALSPECNAME = m3.MATERIALSPECNAME
LEFT JOIN BS_MATERIALFACTORY m4 ON m3.MATERIALSPECNAME = m4.MATERIALSPECNAME AND m2.ERPFACTORY = m4.ERPFACTORY
LEFT JOIN BS_ERPLOCATION be ON m.ERPLOCATION = be.ERPLOCATIONNAME
LEFT JOIN ORG o ON m2.STOCKORGNO = o.ORGNO
LEFT JOIN STORAGESPEC sss ON m.LOCATIONNAME = sss.STORAGENAME
WHERE md.DELIVERYNAME = #{deliveryName})
SELECT M.DELIVERYNAME, M.MATERIALSPECNAME,
M.RECEIVETIME,
M.MAKEDATE,
M.RECEIVEREQUESTDETAILNAME,
M.SITENAME,
M.ERPLOCATION,
M.LOCATIONNAME,
M.MATERIALUNIT,
M.SDK_ID,
M.REMARK,
M.SALESPERSON,
M.CAREER_ASSISTANCE,
M.BUSINESS_UNIT,
M.ERPFACTORY,
M.SUPPLIERNO,
M.DESCRIPTION,
M.MATERIALUNITDESC,
M.SPECNAME,
M.PHASE,
M.DESC_CN,
M.IS_BATCH,
M.REPLACED_VALUE,
M.IQCFLAG,
M.ERPLOCATION2,
M.ERPFACTORY2,
M.LOCATIONNAME2,AA.QTY RECEIVEDQUANTITY2,BB.QTY RECEIVEDQUANTITY, CC.QTY REQUESTQUANTITY, (CC.QTY - BB.QTY) MINUSQTY, AA.QTY STOCKINQTY, BB.QTY CREATEQTY FROM DELIVERY M
LEFT JOIN AA ON M.DELIVERYNAME = AA.RECEIVEREQUESTNAME AND M.MATERIALSPECNAME = AA.MATERIALSPECNAME
LEFT JOIN BB ON M.DELIVERYNAME = BB.RECEIVEREQUESTNAME AND M.MATERIALSPECNAME = BB.MATERIALSPECNAME
LEFT JOIN CC ON M.DELIVERYNAME = CC.RECEIVEREQUESTNAME AND M.MATERIALSPECNAME = CC.MATERIALSPECNAME
WHERE M.DELIVERYNAME = #{deliveryName}
SELECT ROWNUM SEQ, TTT.*
FROM (
SELECT A.RECEIVEREQUESTNAME, A.SITENAME, A.MATERIALPACKINGNAME, A.MATERIALSPECNAME, A.ERPLOCATION, A.ERPFACTORY,
A.LOCATIONNAME, A.CHARGE, A.REMARK, B.DESC_CN, B.DESCRIPTION, A.SDK_ID, SS.SPECNAME, A.PHASE,
A.MATERIALQUANTITY, M.FNAME UNIT, BE.DESCRIPTION ERPLOCATIONDESC, S.DESCRIPTION LOCATIONNAMEDESC,
A.ERPFACTORY ERPFACTROY, o.ORGNAME ERPFACTROYDESC, A.SUPPLIERNAME SUPPLIERNO
FROM MATERIALPACKING A
LEFT JOIN MATERIALSPEC B ON A.MATERIALSPECNAME = B.MATERIALSPECNAME
LEFT JOIN SDK_SPEC SS ON A.SDK_ID = SS.SDK_ID
LEFT JOIN BS_ERPLOCATION BE ON BE.ERPLOCATIONNAME = A.ERPLOCATION
LEFT JOIN STORAGESPEC S ON S.STORAGENAME = A.LOCATIONNAME
LEFT JOIN ORG o ON o.ORGNO = A.ERPFACTORY
LEFT JOIN MATERIALUNIT M ON M.FNUMBER = A.UNIT
WHERE A.SITENAME = #{siteName}
AND A.RECEIVEREQUESTNAME = #{documentName}
AND A.STOCKSTATE = 'Created'
ORDER BY A.CHARGE
) TTT
UPDATE MATERIALRECEIVEREQUESTDETAIL
SET RECEIVEDQUANTITY = #{dto.deliveryNum}
WHERE RECEIVEREQUESTNAME = #{dto.receiveRequestName}
AND RECEIVEREQUESTDETAILNAME = #{dto.receiveRequestDetailName}
AND MATERIALSPECNAME = #{dto.materialSpecName}
SELECT receiveRequestName, materialSpecName, requestQuantity, requestQuantity - receivedQuantity as deliveryNum, RECEIVEREQUESTDETAILNAME
FROM MATERIALRECEIVEREQUESTDETAIL
WHERE RECEIVEREQUESTNAME in
#{name}
order by RECEIVEREQUESTDETAILNAME