2024-01-08 10:58:24 +08:00
|
|
|
|
DECLARE @STARTDATE DATE,@ENDDATE DATE,@LCID INT,@YEAR INT,@MONTH INT,@DAY INT
|
2023-12-29 08:46:01 +08:00
|
|
|
|
SET @STARTDATE ='2023-12-01'
|
|
|
|
|
|
SET @ENDDATE ='2023-12-31'
|
|
|
|
|
|
SET @LCID = 2052
|
|
|
|
|
|
SET @YEAR = 2023
|
2024-01-08 10:58:24 +08:00
|
|
|
|
SET @MONTH = 12
|
|
|
|
|
|
SET @DAY = 30
|
2023-12-29 08:46:01 +08:00
|
|
|
|
|
|
|
|
|
|
--<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ʱ<EFBFBD>ƻ<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>ֵ
|
2024-01-08 10:58:24 +08:00
|
|
|
|
DECLARE @FSCHEDULETYPEID varchar(80)
|
|
|
|
|
|
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD> AIS20221208083030
|
|
|
|
|
|
SET @FSCHEDULETYPEID = '65967bf69b80ca'
|
|
|
|
|
|
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD> AIS20231206144015
|
|
|
|
|
|
--SET @FSCHEDULETYPEID = '658e1974b04f4f'
|
|
|
|
|
|
--<EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><EFBFBD>Կ<EFBFBD>
|
|
|
|
|
|
--SET @FSCHEDULETYPEID = '657BF589F52174'
|
|
|
|
|
|
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
|
|
|
|
|
|
|
2023-12-29 08:46:01 +08:00
|
|
|
|
SELECT
|
2024-01-02 10:44:59 +08:00
|
|
|
|
ROW_NUMBER() OVER(ORDER BY t0.FMATERIALID) AS FIDENTITYID
|
|
|
|
|
|
,t0.FMATERIALID
|
2023-12-29 08:46:01 +08:00
|
|
|
|
,t2.FNUMBER
|
|
|
|
|
|
,t2_L.FNAME
|
|
|
|
|
|
,t2_L.FSPECIFICATION
|
|
|
|
|
|
,(CASE t2S.FEXPPERIOD
|
|
|
|
|
|
WHEN 0 THEN ''
|
|
|
|
|
|
ELSE
|
|
|
|
|
|
CASE
|
|
|
|
|
|
t2S.FEXPUNIT
|
|
|
|
|
|
WHEN 'Y' THEN
|
|
|
|
|
|
CONVERT ( VARCHAR,CAST((t2S.FEXPPERIOD * 12) AS INT) ) + '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
|
|
|
|
|
WHEN 'M' THEN
|
|
|
|
|
|
CONVERT ( VARCHAR,CAST(t2S.FEXPPERIOD AS INT) ) + '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
|
|
|
|
|
WHEN 'D' THEN
|
|
|
|
|
|
CONVERT ( VARCHAR, CAST((
|
|
|
|
|
|
CASE t2S.FEXPPERIOD % 30 WHEN 0 THEN t2S.FEXPPERIOD / 30 ELSE t2S.FEXPPERIOD / 365 * 12 END
|
|
|
|
|
|
) AS INT)) + '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE ''
|
|
|
|
|
|
END
|
|
|
|
|
|
END) AS 'SHELFLIFE'
|
|
|
|
|
|
,CONCAT(t2.FLotSize,t5_L.FNAME, '/<2F><>') AS StandardLot
|
|
|
|
|
|
,dbo.ToDecimal2(t2S.FSAFESTOCK) AS SAFESTOCK --<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
,t2S.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><D7B0><EFBFBD><EFBFBD>'
|
|
|
|
|
|
,t4.FPACKUNITID -- '<27><>λ'
|
|
|
|
|
|
,t6_L.FNAME AS FPACKUNITNAME
|
2024-01-02 10:44:59 +08:00
|
|
|
|
,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>
|
2023-12-29 08:46:01 +08:00
|
|
|
|
,dbo.PackageValConver(ISNULL(t4.FSTOCKQTY,0),t4.FPACKUNITCONVERRATIO) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
2024-01-02 10:44:59 +08:00
|
|
|
|
,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>
|
2024-01-08 10:58:24 +08:00
|
|
|
|
--,t0.FLotQty AS FirmLotQty
|
2024-01-02 10:44:59 +08:00
|
|
|
|
,dbo.ToDecimal2(ISNULL(t0.FFirmQty,0)) FFirmQty --ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
,t0.countM
|
2023-12-29 08:46:01 +08:00
|
|
|
|
FROM
|
2024-01-02 10:44:59 +08:00
|
|
|
|
(SELECT
|
|
|
|
|
|
t0E.FMATERIALID
|
|
|
|
|
|
,sum(t1.FFirmQty) AS FFirmQty
|
|
|
|
|
|
,sum(t1.FOrderQty) AS FOrderQty
|
|
|
|
|
|
,sum(t1.FFINISHQTY) AS FFINISHQTY
|
|
|
|
|
|
,sum(t1.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
|
2024-01-08 10:58:24 +08:00
|
|
|
|
--,sum(t1.FLotQty) As FLotQty
|
2024-01-02 10:44:59 +08:00
|
|
|
|
,sum(M01) AS M01
|
|
|
|
|
|
,sum(S01) AS S01
|
|
|
|
|
|
,sum(S02) AS S02
|
|
|
|
|
|
,sum(S03) AS S03
|
|
|
|
|
|
,count(1) AS countM
|
|
|
|
|
|
FROM
|
|
|
|
|
|
T_PLN_FORECAST t0
|
2024-01-08 10:58:24 +08:00
|
|
|
|
INNER JOIN T_PLN_FORECASTENTRY t0E ON t0.FID = t0E.FID
|
2024-01-02 10:44:59 +08:00
|
|
|
|
LEFT JOIN (
|
2023-12-29 08:46:01 +08:00
|
|
|
|
SELECT
|
2024-01-02 10:44:59 +08:00
|
|
|
|
t1.FMATERIALID
|
|
|
|
|
|
,t1_B.FSALEORDERENTRYID
|
|
|
|
|
|
,t1_B.FSALEORDERENTRYSEQ
|
|
|
|
|
|
,t1_B.FSALEORDERID
|
|
|
|
|
|
,sum(t1.FFirmQty) AS FFirmQty
|
|
|
|
|
|
,sum(t1.FOrderQty) AS FOrderQty
|
|
|
|
|
|
,sum(t2.FFINISHQTY) AS FFINISHQTY
|
|
|
|
|
|
,sum(t2.FSTOCKINQUASELQTY) AS FSTOCKINQUASELQTY
|
2024-01-08 10:58:24 +08:00
|
|
|
|
--,sum(t1.FLotQty) As FLotQty
|
2024-01-02 10:44:59 +08:00
|
|
|
|
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
|
2024-01-08 10:58:24 +08:00
|
|
|
|
) t1 ON (t1.FMATERIALID = t0E.FMATERIALID AND t1.FSALEORDERID = t0E.FID AND t0E.FENTRYID = t1.FSALEORDERENTRYID AND t1.FSALEORDERENTRYSEQ = t0E.FSEQ)
|
2024-01-02 10:44:59 +08:00
|
|
|
|
WHERE
|
|
|
|
|
|
t0.FDATE BETWEEN @STARTDATE AND @ENDDATE
|
|
|
|
|
|
GROUP BY
|
|
|
|
|
|
t0E.FMATERIALID
|
|
|
|
|
|
) t0
|
|
|
|
|
|
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 T_MATERIAL_INVENTORY_MONTH_RECORD t4 ON (t4.FMATERIALID = t0.FMATERIALID AND t4.RECORDYEAR = @YEAR AND t4.RECORDMONTH = @MONTH and t4.RECORDDAY = @DAY)
|
2023-12-29 08:46:01 +08:00
|
|
|
|
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)
|