This commit is contained in:
PastSaid
2024-03-04 16:50:20 +08:00
parent f3eae0a034
commit 5e2781182d
133 changed files with 20406 additions and 501 deletions

View File

@@ -14,12 +14,41 @@ BEGIN
SET @HASID = 0;
SELECT
*
t0.FID
,t0.FMATERIALID
,t0.FNUMBER
,t0.FNAME
,t0.FSPECIFICATION
,t0.SHELFLIFE
,t0.StandardLot
,CEILING(t0.SAFESTOCK) SAFESTOCK
,t0.FSTOREUNITID
,t0.FSTOREUNITNAME
,CEILING(t0.SAFESTOCKCOUNT) SAFESTOCKCOUNT
,t0.FPACKUNITCONVT
,CEILING(t0.FLOTYIELD) FLOTYIELD
,CEILING(t0.FPACKUNITCONVERRATIO) FPACKUNITCONVERRATIO
,t0.FPACKUNITID
,t0.FPACKUNITNAME
,CEILING(t0.M01) M01
,CEILING(t0.S01) S01
,CEILING(t0.S02) S02
,CEILING(t0.S03) S03
,CEILING(t0.InProductionQty) InProductionQty
,CEILING(t0.InStockQty) InStockQty
,CEILING(t0.TotalStockQty) TotalStockQty
,CEILING(t0.OrderLotQty) OrderLotQty
,CEILING(t0.FirmLotQty) FirmLotQty
,CEILING(t0.FFirmQty) FFirmQty
,t0.FRECORDDAY
,t0.FRECORDMONTH
,t0.FRECORDYEAR
,t0.countM
INTO #TMPMPS
FROM
T_PLAN_PLANPLMRPT A
T_PLAN_PLANPLMRPT t0
WHERE
A.FRECORDDAY = @DAY AND A.FRECORDMONTH = @MONTH AND A.FRECORDYEAR = @YEAR
t0.FRECORDDAY = @DAY AND t0.FRECORDMONTH = @MONTH AND t0.FRECORDYEAR = @YEAR
SELECT @HASID = COUNT(1) FROM #TMPMPS
@@ -28,7 +57,7 @@ BEGIN
SET @sql = '
select
t0.*
,2 AS FDECIMALS
,0 AS FDECIMALS
,'+@SEQFLD+'
into '+ @TableName +' From #TMPMPS t0 '

View File

@@ -45,13 +45,15 @@ BEGIN
) AS INT)) + '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE ''
END
END) AS 'SHELFLIFE'
,CONCAT(t2.FLotSize,t5_L.FNAME, '/<2F><>') AS StandardLot
--,CONCAT(t2.FLotSize,t5_L.FNAME, '/<2F><>') AS StandardLot
,CONCAT(CAST(CEILING(t4.FLOTYIELD) AS VARCHAR),t5_L.FNAME, '/<2F><>') AS StandardLot
,dbo.ToDecimal2(t2S.FSAFESTOCK) AS SAFESTOCK --<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(t2S.FSTOREUNITID ,0) AS FSTOREUNITID--<EFBFBD><EFBFBD><EFBFBD>λ
,t5_L.FNAME AS FSTOREUNITNAME
,(dbo.PackageValConver(t2S.FSAFESTOCK, t4.FPACKUNITCONVERRATIO)) AS SAFESTOCKCOUNT
,CONCAT(CONVERT(VARCHAR,dbo.ToDecimal2(t4.FPACKUNITCONVERRATIO)),t5_L.FNAME ,'/' ,t6_L.FNAME) AS FPACKUNITCONVT
,ISNULL(t4.FLOTYIELD,0) AS FLOTYIELD-- 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CONCAT(CONVERT(VARCHAR,CEILING(t4.FPACKUNITCONVERRATIO)),t5_L.FNAME ,'/' ,t6_L.FNAME) AS FPACKUNITCONVT
,ISNULL(CAST(t2.FLotSize AS INT),0) AS FLOTYIELD-- 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
--,ISNULL(t4.FLOTYIELD,0) AS FLOTYIELD-- 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(t4.FPACKUNITCONVERRATIO,0) AS FPACKUNITCONVERRATIO -- '<27><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>'
,ISNULL(t4.FPACKUNITID,0) AS FPACKUNITID-- '<27><>λ'
,t6_L.FNAME AS FPACKUNITNAME
@@ -59,10 +61,13 @@ BEGIN
,dbo.PackageValConver(t0.S01,t4.FPACKUNITCONVERRATIO) as S01
,dbo.PackageValConver(t0.S02,t4.FPACKUNITCONVERRATIO) as S02
,dbo.PackageValConver(t0.S03,t4.FPACKUNITCONVERRATIO) as S03
,dbo.PackageValConver(ISNULL(t0.FFINISHQTY,0) - ISNULL(t0.FSTOCKINQUASELQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t4.FSTOCKQTY,0),t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver((ISNULL(t0.FFINISHQTY,0) - ISNULL(t0.FSTOCKINQUASELQTY,0) + ISNULL(t4.FSTOCKQTY,0)),t4.FPACKUNITCONVERRATIO) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t0.FOrderQty,0),t4.FPACKUNITCONVERRATIO) AS OrderLotQty --<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver(ISNULL(t3.FFINISHQTY,0) - ISNULL(t3.FSTOCKINQUASELQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t3.FSNRPTSELQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver(ISNULL(t4.FSTOCKQTY,0),t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t3.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) + ISNULL(t4.FSTOCKQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver((ISNULL(t3.FFINISHQTY,0) - ISNULL(t3.FSTOCKINQUASELQTY,0) + ISNULL(t4.FSTOCKQTY,0)),t4.FPACKUNITCONVERRATIO) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver((ISNULL(t3.FSNRPTSELQTY,0) + ISNULL(t3.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) + ISNULL(t4.FSTOCKQTY,0)),t4.FPACKUNITCONVERRATIO) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t0.FOrderQty,0),t4.FLOTYIELD) AS OrderLotQty --<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver(ISNULL(t0.FFirmQty,0), t4.FPACKUNITCONVERRATIO) AS FirmLotQty --ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(t0.FLotQty,0) AS FirmLotQty
,dbo.ToDecimal2(ISNULL(t0.FFirmQty,0)) FFirmQty --ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@@ -75,18 +80,19 @@ BEGIN
t0E.FMATERIALID
,sum(t1.FFirmQty) AS FFirmQty
,sum(t1.FOrderQty) AS FOrderQty
,sum(t1.FFINISHQTY) AS FFINISHQTY
,sum(t1.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
--,sum(t2.FFINISHQTY) AS FFINISHQTY
--,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
,sum(t1.FLotQty) As FLotQty
,sum(M01) AS M01
,sum(S01) AS S01
,sum(S02) AS S02
,sum(S03) AS S03
,sum(t0E.FQTY) AS M01
,sum(t0E.S01) AS S01
,sum(t0E.S02) AS S02
,sum(t0E.S03) AS S03
,count(1) AS countM
FROM
T_PLN_FORECAST t0
LEFT JOIN T_PLN_FORECASTENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN (
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SELECT
t1.FMATERIALID
,t1_B.FSALEORDERENTRYID
@@ -94,44 +100,12 @@ BEGIN
,t1_B.FSALEORDERID
,sum(t1.FFirmQty) AS FFirmQty
,sum(t1.FOrderQty) AS FOrderQty
,sum(t2.FFINISHQTY) AS FFINISHQTY
,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
--,sum(t2.FFINISHQTY) AS FFINISHQTY
--,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
,sum(t1.FLotQty) As FLotQty
FROM
T_PLN_PLANORDER t1
LEFT JOIN T_PLN_PLANORDER_B t1_B ON t1.FID = t1_B.FID
LEFT JOIN (
SELECT
t0E.FMATERIALID
,t0E_LK.FSID
,SUM(t1.FFINISHQTY) AS FFINISHQTY --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,SUM(t1.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY --<EFBFBD>ϸ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM
T_PRD_MO t0
LEFT JOIN T_PRD_MOENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN T_PRD_MOENTRY_LK t0E_LK ON t0E_LK.FENTRYID = t0E.FENTRYID AND t0E_LK.FSTABLENAME = 'T_PLN_PLANORDER'
LEFT JOIN T_PRD_MOENTRY_A t0E_A ON t0E_A.FENTRYID = t0E.FENTRYID
LEFT JOIN (
SELECT
t0.FBILLTYPE --50fa7c2eda7947b89fab5431bf25d48e <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> e52b554423704173b7306554708a8b05 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0E.FMOENTRYID
,t0E.FFINISHQTY
,t0E_A.FSTOCKINQUASELQTY
FROM
T_PRD_MORPT t0
LEFT JOIN T_PRD_MORPTENTRY t0E ON t0E.FID = t0.FID
LEFT JOIN T_PRD_MORPTENTRY_A t0E_A ON t0E_A.FID = t0.FID AND t0E_A.FENTRYID = t0E.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C' AND t0.FBILLTYPE = '50fa7c2eda7947b89fab5431bf25d48e'
) t1 ON t1.FMOENTRYID = t0E.FENTRYID
WHERE
t0E.FSRCBILLTYPE ='PLN_PLANORDER'
AND t0E_A.FREQSRC = 2
AND t0E_A.FSTATUS <> 6
AND t0E.FSALEORDERENTRYID <> 0
GROUP BY
t0E.FMATERIALID
,t0E_LK.FSID
) t2 ON t2.FSID = t1.FID AND t2.FMATERIALID = t1.FMATERIALID
WHERE t1.FDATASOURCE = 1 AND t1_B.FDEMANDTYPE = 2
GROUP BY
t1.FMATERIALID
@@ -147,6 +121,42 @@ BEGIN
LEFT JOIN T_BD_MATERIAL t2 ON t2.FMATERIALID = t0.FMATERIALID
LEFT JOIN T_BD_MATERIAL_L t2_L ON (t2_L.FMATERIALID = t0.FMATERIALID AND t2_L.FLOCALEID = @LCID)
LEFT JOIN T_BD_MATERIALSTOCK t2S ON t2S.FMATERIALID = t0.FMATERIALID
LEFT JOIN (
SELECT
t0E.FMATERIALID
,SUM(ISNULL(t0e.FQTY,0) - ISNULL(t0E_A.FREPQUASELQTY,0)) AS 'FSNRPTSELQTY' --<EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD>
,SUM(ISNULL(t0E_A.FREPQUASELQTY,0)) AS FREPQUASELQTY
,SUM(ISNULL(t0E_A.FREPQUASELAUXQTY,0)) AS FREPQUASELAUXQTY
,SUM(t0e.FQTY) FQTY--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,SUM(t1.FFINISHQTY) AS 'FFINISHQTY' --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,SUM(t1.FSTOCKINQUASELQTY) AS 'FSTOCKINQUASELQTY' --<EFBFBD>ϸ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,(SUM(t1.FFINISHQTY - t1.FSTOCKINQUASELQTY)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM
T_PRD_MO t0
LEFT JOIN T_PRD_MOENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN T_PRD_MOSNDETAIL t0s on t0s.FENTRYID = t0e.FENTRYID
LEFT JOIN T_PRD_MOENTRY_A t0E_A ON t0E_A.FENTRYID = t0E.FENTRYID
LEFT JOIN (
SELECT
t0.FBILLTYPE --50fa7c2eda7947b89fab5431bf25d48e <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> e52b554423704173b7306554708a8b05 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0E.FMOENTRYID
,SUM(t0E.FFINISHQTY) 'FFINISHQTY'
,SUM(t0E_A.FSTOCKINQUASELQTY) 'FSTOCKINQUASELQTY'
FROM
T_PRD_MORPT t0
LEFT JOIN T_PRD_MORPTENTRY t0E ON t0E.FID = t0.FID
LEFT JOIN T_PRD_MORPTENTRY_A t0E_A ON t0E_A.FID = t0.FID AND t0E_A.FENTRYID = t0E.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C' AND t0.FBILLTYPE = '50fa7c2eda7947b89fab5431bf25d48e'
GROUP BY
t0.FBILLTYPE
,t0E.FMOENTRYID
) t1 ON t1.FMOENTRYID = t0E.FENTRYID
WHERE 1=1
AND t0.FDOCUMENTSTATUS = 'C'
AND (t0E_A.FSTATUS = 3 OR t0E_A.FSTATUS = 4 OR t0E_A.FSTATUS = 5)
GROUP BY
t0E.FMATERIALID
) t3 on t3.FMATERIALID = t0.FMATERIALID
LEFT JOIN T_MATERIAL_INVENTORY_MONTH_RECORD t4 ON (t4.FMATERIALID = t0.FMATERIALID AND t4.RECORDYEAR = @YEAR AND t4.RECORDMONTH = @MONTH and t4.RECORDDAY = @DAY)
LEFT JOIN T_BD_UNIT_L t5_L ON (t5_l.FUNITID = t2S.FSTOREUNITID AND t5_L.FLOCALEID = @LCID)
LEFT JOIN T_BD_UNIT_L t6_L ON (t6_l.FUNITID = t4.FPACKUNITID AND t6_L.FLOCALEID = @LCID)

View File

@@ -17,7 +17,7 @@ BEGIN
,T0.FMATERIALID
,T0.FNUMBER
,ISNULL(T1.STOCKQTY,0) AS FSTOCKQTY
,T0P.FLOTYIELD -- 'ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,T0P.FLOTYIELD -- '<27><>׼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,T0P.FPACKUNITCONVERRATIO -- '<27><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>'
,T0P.FPACKUNITID -- '<27><>λ'
,T0.FUSEORGID

View File

@@ -7,5 +7,7 @@ select @result = (CASE isnull(@coefficient,0)
WHEN 0
THEN isnull(@cnvNumber,0) ELSE (ISNULL(@cnvNumber,0)/@coefficient)
END)
RETURN ROUND(@result,2)
END
--RETURN ROUND(@result,2)
RETURN CEILING(@result)
END

View File

@@ -1,10 +1,15 @@
DECLARE @STARTDATE DATE,@ENDDATE DATE,@LCID INT,@YEAR INT,@MONTH INT,@DAY INT
SET @STARTDATE ='2023-12-01'
SET @ENDDATE ='2023-12-31'
SET @LCID = 2052
SET @YEAR = 2023
SET @MONTH = 12
SET @DAY = 30
SET @STARTDATE ='2024-01-01'
SET @ENDDATE ='2024-01-31'
SET @YEAR = 2024
SET @MONTH = 1
SET @DAY = 20
--SET @STARTDATE ='2023-12-01'
--SET @ENDDATE ='2023-12-31'
--SET @YEAR = 2023
--SET @MONTH = 12
--SET @DAY = 20
--<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ʱ<EFBFBD>ƻ<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>ֵ
DECLARE @FSCHEDULETYPEID varchar(80)
@@ -17,8 +22,7 @@
SELECT @DAY = (CASE WHEN LTRIM(RTRIM(T0.FPARAMETERS)) = '' THEN @DAY ELSE CAST(T0.FPARAMETERS AS INT) END) FROM T_BAS_SCHEDULEINFO T0 WHERE T0.FSCHEDULETYPEID = @FSCHEDULETYPEID
SELECT
ROW_NUMBER() OVER(ORDER BY t0.FMATERIALID) AS FIDENTITYID
,t0.FMATERIALID
t0.FMATERIALID
,t2.FNUMBER
,t2_L.FNAME
,t2_L.FSPECIFICATION
@@ -37,45 +41,54 @@
) AS INT)) + '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE ''
END
END) AS 'SHELFLIFE'
,CONCAT(t2.FLotSize,t5_L.FNAME, '/<2F><>') AS StandardLot
--,CONCAT(t2.FLotSize,t5_L.FNAME, '/<2F><>') AS StandardLot
,CONCAT(CAST(CEILING(t4.FLOTYIELD) AS VARCHAR),t5_L.FNAME, '/<2F><>') AS StandardLot
,dbo.ToDecimal2(t2S.FSAFESTOCK) AS SAFESTOCK --<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t2S.FSTOREUNITID --<EFBFBD><EFBFBD><EFBFBD>λ
,ISNULL(t2S.FSTOREUNITID ,0) AS FSTOREUNITID--<EFBFBD><EFBFBD><EFBFBD>λ
,t5_L.FNAME AS FSTOREUNITNAME
,(dbo.PackageValConver(t2S.FSAFESTOCK, t4.FPACKUNITCONVERRATIO)) AS SAFESTOCKCOUNT
,CONCAT(CONVERT(VARCHAR,dbo.ToDecimal2(t4.FPACKUNITCONVERRATIO)),t5_L.FNAME ,'/' ,t6_L.FNAME) AS FPACKUNITCONVT
,t4.FLOTYIELD -- 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t4.FPACKUNITCONVERRATIO -- '<27><>װ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t4.FPACKUNITID -- '<27><>λ'
,CONCAT(CONVERT(VARCHAR,CEILING(t4.FPACKUNITCONVERRATIO)),t5_L.FNAME ,'/' ,t6_L.FNAME) AS FPACKUNITCONVT
,ISNULL(CAST(t2.FLotSize AS INT),0) AS FLOTYIELD-- 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
--,ISNULL(t4.FLOTYIELD,0) AS FLOTYIELD-- 'ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(t4.FPACKUNITCONVERRATIO,0) AS FPACKUNITCONVERRATIO -- '<27><>װ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(t4.FPACKUNITID,0) AS FPACKUNITID-- '<27><>λ'
,t6_L.FNAME AS FPACKUNITNAME
,dbo.PackageValConver(t0.M01,t4.FPACKUNITCONVERRATIO) as M01
,dbo.PackageValConver(t0.S01,t4.FPACKUNITCONVERRATIO) as S01
,dbo.PackageValConver(t0.S02,t4.FPACKUNITCONVERRATIO) as S02
,dbo.PackageValConver(t0.S03,t4.FPACKUNITCONVERRATIO) as S03
,dbo.PackageValConver(ISNULL(t0.FFINISHQTY,0) - ISNULL(t0.FSTOCKINQUASELQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t4.FSTOCKQTY,0),t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver((ISNULL(t0.FFINISHQTY,0) - ISNULL(t0.FSTOCKINQUASELQTY,0) + ISNULL(t4.FSTOCKQTY,0)),t4.FPACKUNITCONVERRATIO) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t0.FOrderQty,0),t4.FPACKUNITCONVERRATIO) AS OrderLotQty --<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t0.FFirmQty,0), t4.FPACKUNITCONVERRATIO) AS FirmLotQty --ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,t0.FLotQty AS FirmLotQty
--,dbo.PackageValConver(ISNULL(t3.FFINISHQTY,0) - ISNULL(t3.FSTOCKINQUASELQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t3.FSNRPTSELQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver(ISNULL(t4.FSTOCKQTY,0),t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t3.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) + ISNULL(t4.FSTOCKQTY,0) ,t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver((ISNULL(t3.FFINISHQTY,0) - ISNULL(t3.FSTOCKINQUASELQTY,0) + ISNULL(t4.FSTOCKQTY,0)),t4.FPACKUNITCONVERRATIO) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver((ISNULL(t3.FSNRPTSELQTY,0) + ISNULL(t3.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) + ISNULL(t4.FSTOCKQTY,0)),t4.FPACKUNITCONVERRATIO) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,dbo.PackageValConver(ISNULL(t0.FOrderQty,0),t4.FLOTYIELD) AS OrderLotQty --<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--,dbo.PackageValConver(ISNULL(t0.FFirmQty,0), t4.FPACKUNITCONVERRATIO) AS FirmLotQty --ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,ISNULL(t0.FLotQty,0) AS FirmLotQty
,dbo.ToDecimal2(ISNULL(t0.FFirmQty,0)) FFirmQty --ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,@DAY AS FRECORDDAY
,@MONTH AS FRECORDMONTH
,@YEAR AS FRECORDYEAR
,t0.countM
FROM
(SELECT
t0E.FMATERIALID
,sum(t1.FFirmQty) AS FFirmQty
,sum(t1.FOrderQty) AS FOrderQty
,sum(t1.FFINISHQTY) AS FFINISHQTY
,sum(t1.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
--,sum(t1.FLotQty) As FLotQty
,sum(M01) AS M01
,sum(S01) AS S01
,sum(S02) AS S02
,sum(S03) AS S03
--,sum(t2.FFINISHQTY) AS FFINISHQTY
--,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
,sum(t1.FLotQty) As FLotQty
,sum(t0E.FQTY) AS M01
,sum(t0E.S01) AS S01
,sum(t0E.S02) AS S02
,sum(t0E.S03) AS S03
,count(1) AS countM
FROM
T_PLN_FORECAST t0
INNER JOIN T_PLN_FORECASTENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN T_PLN_FORECASTENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN (
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SELECT
t1.FMATERIALID
,t1_B.FSALEORDERENTRYID
@@ -83,51 +96,19 @@
,t1_B.FSALEORDERID
,sum(t1.FFirmQty) AS FFirmQty
,sum(t1.FOrderQty) AS FOrderQty
,sum(t2.FFINISHQTY) AS FFINISHQTY
,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
--,sum(t1.FLotQty) As FLotQty
--,sum(t2.FFINISHQTY) AS FFINISHQTY
--,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
,sum(t1.FLotQty) As FLotQty
FROM
T_PLN_PLANORDER t1
LEFT JOIN T_PLN_PLANORDER_B t1_B ON t1.FID = t1_B.FID
LEFT JOIN (
SELECT
t0E.FMATERIALID
,t0E_LK.FSID
,SUM(t1.FFINISHQTY) AS FFINISHQTY --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,SUM(t1.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY --<EFBFBD>ϸ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM
T_PRD_MO t0
LEFT JOIN T_PRD_MOENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN T_PRD_MOENTRY_LK t0E_LK ON t0E_LK.FENTRYID = t0E.FENTRYID AND t0E_LK.FSTABLENAME = 'T_PLN_PLANORDER'
LEFT JOIN T_PRD_MOENTRY_A t0E_A ON t0E_A.FENTRYID = t0E.FENTRYID
LEFT JOIN (
SELECT
t0.FBILLTYPE --50fa7c2eda7947b89fab5431bf25d48e <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> e52b554423704173b7306554708a8b05 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0E.FMOENTRYID
,t0E.FFINISHQTY
,t0E_A.FSTOCKINQUASELQTY
FROM
T_PRD_MORPT t0
LEFT JOIN T_PRD_MORPTENTRY t0E ON t0E.FID = t0.FID
LEFT JOIN T_PRD_MORPTENTRY_A t0E_A ON t0E_A.FID = t0.FID AND t0E_A.FENTRYID = t0E.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C' AND t0.FBILLTYPE = '50fa7c2eda7947b89fab5431bf25d48e'
) t1 ON t1.FMOENTRYID = t0E.FENTRYID
WHERE
t0E.FSRCBILLTYPE ='PLN_PLANORDER'
AND t0E_A.FREQSRC = 2
AND t0E_A.FSTATUS <> 6
AND t0E.FSALEORDERENTRYID <> 0
GROUP BY
t0E.FMATERIALID
,t0E_LK.FSID
) t2 ON t2.FSID = t1.FID AND t2.FMATERIALID = t1.FMATERIALID
WHERE t1.FDATASOURCE = 1 AND t1_B.FDEMANDTYPE = 2
GROUP BY
t1.FMATERIALID
,t1_B.FSALEORDERENTRYID
,t1_B.FSALEORDERENTRYSEQ
,t1_B.FSALEORDERID
) t1 ON (t1.FMATERIALID = t0E.FMATERIALID AND t1.FSALEORDERID = t0E.FID AND t0E.FENTRYID = t1.FSALEORDERENTRYID AND t1.FSALEORDERENTRYSEQ = t0E.FSEQ)
) t1 ON (t1.FMATERIALID = t0E.FMATERIALID AND t1.FSALEORDERID = t0.FID AND t0E.FENTRYID = t1.FSALEORDERENTRYID AND t1.FSALEORDERENTRYSEQ = t0E.FSEQ)
WHERE
t0.FDATE BETWEEN @STARTDATE AND @ENDDATE
GROUP BY
@@ -136,6 +117,42 @@
LEFT JOIN T_BD_MATERIAL t2 ON t2.FMATERIALID = t0.FMATERIALID
LEFT JOIN T_BD_MATERIAL_L t2_L ON (t2_L.FMATERIALID = t0.FMATERIALID AND t2_L.FLOCALEID = @LCID)
LEFT JOIN T_BD_MATERIALSTOCK t2S ON t2S.FMATERIALID = t0.FMATERIALID
LEFT JOIN (
SELECT
t0E.FMATERIALID
,SUM(ISNULL(t0e.FQTY,0) - ISNULL(t0E_A.FREPQUASELQTY,0)) AS 'FSNRPTSELQTY' --<EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD>
,SUM(ISNULL(t0E_A.FREPQUASELQTY,0)) AS FREPQUASELQTY
,SUM(ISNULL(t0E_A.FREPQUASELAUXQTY,0)) AS FREPQUASELAUXQTY
,SUM(t0e.FQTY) FQTY--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,SUM(t1.FFINISHQTY) AS 'FFINISHQTY' --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,SUM(t1.FSTOCKINQUASELQTY) AS 'FSTOCKINQUASELQTY' --<EFBFBD>ϸ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,(SUM(t1.FFINISHQTY - t1.FSTOCKINQUASELQTY)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM
T_PRD_MO t0
LEFT JOIN T_PRD_MOENTRY t0E ON t0.FID = t0E.FID
LEFT JOIN T_PRD_MOSNDETAIL t0s on t0s.FENTRYID = t0e.FENTRYID
LEFT JOIN T_PRD_MOENTRY_A t0E_A ON t0E_A.FENTRYID = t0E.FENTRYID
LEFT JOIN (
SELECT
t0.FBILLTYPE --50fa7c2eda7947b89fab5431bf25d48e <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> e52b554423704173b7306554708a8b05 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0E.FMOENTRYID
,SUM(t0E.FFINISHQTY) 'FFINISHQTY'
,SUM(t0E_A.FSTOCKINQUASELQTY) 'FSTOCKINQUASELQTY'
FROM
T_PRD_MORPT t0
LEFT JOIN T_PRD_MORPTENTRY t0E ON t0E.FID = t0.FID
LEFT JOIN T_PRD_MORPTENTRY_A t0E_A ON t0E_A.FID = t0.FID AND t0E_A.FENTRYID = t0E.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C' AND t0.FBILLTYPE = '50fa7c2eda7947b89fab5431bf25d48e'
GROUP BY
t0.FBILLTYPE
,t0E.FMOENTRYID
) t1 ON t1.FMOENTRYID = t0E.FENTRYID
WHERE 1=1
AND t0.FDOCUMENTSTATUS = 'C'
AND (t0E_A.FSTATUS = 3 OR t0E_A.FSTATUS = 4 OR t0E_A.FSTATUS = 5)
GROUP BY
t0E.FMATERIALID
) t3 on t3.FMATERIALID = t0.FMATERIALID
LEFT JOIN T_MATERIAL_INVENTORY_MONTH_RECORD t4 ON (t4.FMATERIALID = t0.FMATERIALID AND t4.RECORDYEAR = @YEAR AND t4.RECORDMONTH = @MONTH and t4.RECORDDAY = @DAY)
LEFT JOIN T_BD_UNIT_L t5_L ON (t5_l.FUNITID = t2S.FSTOREUNITID AND t5_L.FLOCALEID = @LCID)
LEFT JOIN T_BD_UNIT_L t6_L ON (t6_l.FUNITID = t4.FPACKUNITID AND t6_L.FLOCALEID = @LCID)
LEFT JOIN T_BD_UNIT_L t6_L ON (t6_l.FUNITID = t4.FPACKUNITID AND t6_L.FLOCALEID = @LCID)