101 lines
3.0 KiB
SQL
101 lines
3.0 KiB
SQL
SELECT
|
|
tt0.*
|
|
--CONVERT(int,tt0.inRow) AS 'inRow'
|
|
,ISNULL(tt2.物料内码,0) AS '物料内码'
|
|
,ISNULL(tt2.含税单价,0) AS '含税单价'
|
|
,ISNULL(tt2.综合单价,0) AS '综合单价'
|
|
,ISNULL(tt2.默认税率,0) AS '默认税率'
|
|
,tt2.FUSEORGID
|
|
INTO #TMP
|
|
FROM (
|
|
SELECT t0.FBILLNO
|
|
,t0.FAPPLICATIONDATE
|
|
,t0e.FMATERIALID MATERIALID
|
|
,t0e.FENTRYID
|
|
,t0e.FEVALUATEPRICE --单价
|
|
,t0e.FTAXPRICE --含税单价
|
|
,t0e.FTAXRATE --税率
|
|
,t0e.FAMOUNT --金额
|
|
,t0e.FREQAMOUNT --含税金额
|
|
,t0e.FREQQTY
|
|
FROM T_PUR_Requisition t0
|
|
INNER JOIN T_PUR_ReqEntry t0e on t0.FID = t0e.FID
|
|
WHERE 1 = 1
|
|
--AND t0.FBILLNO = 'CGSQ000769'
|
|
--AND t0e.FEVALUATEPRICE = 0
|
|
AND t0.FAPPLICATIONORGID = 101542
|
|
--AND t0.FDOCUMENTSTATUS = 'C'
|
|
AND t0.FAPPLICATIONDATE >= '2024-04-01 00:00:00'
|
|
) tt0
|
|
OUTER APPLY (
|
|
SELECT TOP 1
|
|
t0e.FID
|
|
,t0e.FENTRYID
|
|
,t0.FBILLNO
|
|
,t0.F_QNV_TEXT2
|
|
,t0e.F_QNV_BASE1 AS '物料内码'
|
|
,t0e.F_QNV_DECIMAL1 AS '含税单价'
|
|
,t0e.F_QNV_DECIMAL3 AS '综合单价'
|
|
,t0e.F_QNV_DATE2 AS '单价生效日期'
|
|
,t0e.F_QNV_DATE3 AS '单价失效日期'
|
|
,t1.FTAXRATE AS '默认税率'
|
|
,tt1.FUSEORGID
|
|
FROM QNV_t_Cust_Entry100003 t0
|
|
INNER JOIN QNV_t_Cust_Entry100004 t0e on t0.FID = t0e.FID
|
|
INNER JOIN T_BD_TAXRATE t1 on t1.FID = t0e.F_QNV_BASE3
|
|
CROSS APPLY (
|
|
SELECT t3.FMATERIALID,t3.FUSEORGID
|
|
FROM T_BD_MATERIAL t2
|
|
INNER JOIN T_BD_MATERIAL t3 on t2.FMASTERID = t3.FMASTERID
|
|
--AND (t3.FUSEORGID = 101542 OR t3.FUSEORGID = 101549 OR t3.FUSEORGID = 1)
|
|
WHERE t2.FMATERIALID = tt0.MATERIALID
|
|
AND t3.FMATERIALID = t0e.F_QNV_BASE1
|
|
) tt1
|
|
WHERE 1 = 1
|
|
AND t0.FDOCUMENTSTATUS ='C'
|
|
AND GETDATE() BETWEEN t0e.F_QNV_DATE2 AND t0e.F_QNV_DATE3
|
|
ORDER BY t0e.F_QNV_DATE2 DESC
|
|
) tt2
|
|
WHERE 1 = 1
|
|
|
|
--SELECT t1.含税单价/(1+t1.默认税率/100)--单价
|
|
-- ,t1.含税单价 --含税单价
|
|
-- ,t1.默认税率 --税率
|
|
-- ,t1.含税单价/(1+t1.默认税率/100) * t0e.FREQQTY--金额
|
|
-- ,t1.含税单价 * t0e.FREQQTY --含税金额
|
|
-- ,t1.FAPPLICATIONDATE
|
|
--FROM T_PUR_ReqEntry t0e
|
|
-- INNER JOIN #TMP t1 on t0e.FENTRYID = t1.FENTRYID
|
|
--ORDER BY t1.FAPPLICATIONDATE DESC
|
|
|
|
|
|
|
|
--UPDATE t0e SET t0e.FEVALUATEPRICE = t1.含税单价/(1+t1.默认税率/100)--单价
|
|
-- ,t0e.FTAXPRICE = t1.含税单价 --含税单价
|
|
-- ,t0e.FTAXRATE =t1.默认税率 --税率
|
|
-- ,t0e.FAMOUNT = t1.含税单价/(1+t1.默认税率/100) * t0e.FREQQTY--金额
|
|
-- ,t0e.FREQAMOUNT = t1.含税单价 * t0e.FREQQTY --含税金额
|
|
--FROM T_PUR_ReqEntry t0e
|
|
-- INNER JOIN #TMP t1 on t0e.FENTRYID = t1.FENTRYID
|
|
|
|
SELECT t0.FBILLNO
|
|
,t0.FAPPLICATIONDATE
|
|
,t0.FID
|
|
,t0.FTOTALAMOUNT
|
|
,t1.sumREQAMOUNT
|
|
,t0.FTOTALNOREQAMOUNT
|
|
,t1.sumAMOUNT
|
|
--UPDATE t0 SET t0.FTOTALAMOUNT = t1.sumREQAMOUNT
|
|
-- ,t0.FTOTALNOREQAMOUNT =t1.sumAMOUNT
|
|
FROM T_PUR_Requisition t0
|
|
CROSS APPLY (
|
|
SELECT SUM(t0e.FAMOUNT) sumAMOUNT,SUM(t0e.FREQAMOUNT) sumREQAMOUNT
|
|
FROM T_PUR_ReqEntry t0e
|
|
WHERE t0e.FID = t0.FID
|
|
GROUP BY t0e.FID
|
|
) t1
|
|
WHERE 1 = 1
|
|
AND t0.FAPPLICATIONDATE >= '2024-04-01 00:00:00'
|
|
AND t0.FAPPLICATIONORGID = 101542
|
|
|
|
DROP TABLE #TMP |