IF EXISTS(SELECT * FROM SYS.PROCEDURES WHERE NAME='PROC_INQUIRPLMTMPRTP') DROP PROCEDURE dbo.PROC_INQUIRPLMTMPRTP; GO CREATE PROCEDURE PROC_INQUIRPLMTMPRTP @STARTDATE date ,@ENDDATE date ,@LCID int ,@SeqFld varchar(200) AS BEGIN SELECT A.FID ,A.FBILLNO ,AE.FMATERIALID ,AE.FENTRYID ,C.FNUMBER ,C_L.FNAME ,C_L.FSPECIFICATION ,(CASE CS.FEXPUNIT WHEN 'Y' THEN CONVERT ( VARCHAR, CAST(CS.FEXPPERIOD AS INT) * 12 ) + '个月' WHEN 'M' THEN CONVERT ( VARCHAR, CAST(CS.FEXPPERIOD AS INT) ) + '个月' WHEN 'D' THEN CONVERT ( VARCHAR, CAST(CS.FEXPPERIOD AS INT) / 365 * 12) + '个月' ELSE '' END) AS 'ShelfLife' --,'' AS '标准批量' ,CS.FSAFESTOCK --安全库存 ,CS.FSTOREUNITID --库存单位 --,CP.FLOTYIELD -- '每批产量' --,CP.FPACKUNITCONVERRATIO -- '包装规格' --,CP.FPACKUNITCONVERRATIO -- '包装规格-换算' --,CP.FPACKUNITID -- '单位' --,AE.M01 --,AE.S01 --,AE.S02 --,AE.S03 ,'' AS 'M01' ,'' AS 'S01' ,'' AS 'S02' ,'' AS 'S03' ,B.FFirmQty ,B.FOrderQty into #TMPMPS FROM ( SELECT A.FMATERIALID ,A_B.FSALEORDERENTRYID ,SUM(A.FFirmQty) as 'FFirmQty' ,SUM(A.FORDERQTY) as 'FOrderQty' FROM T_PLN_PLANORDER A LEFT JOIN T_PLN_PLANORDER_B A_B ON A.FID = A_B.FID WHERE A.FRELEASETYPE = 1 --AND (A.FRELEASESTATUS = 1 OR A.FRELEASESTATUS = 2 ) group By A.FRELEASETYPE ,A.FMATERIALID ,A_B.FSALEORDERENTRYID ) B --预测单 LEFT JOIN T_PLN_FORECASTENTRY AE ON B.FSALEORDERENTRYID = AE.FENTRYID LEFT JOIN T_PLN_FORECAST A ON A.FID = AE.FID LEFT JOIN T_BD_MATERIAL C ON C.FMATERIALID = B.FMATERIALID LEFT JOIN T_BD_MATERIAL_L C_L ON C_L.FMATERIALID = B.FMATERIALID LEFT JOIN T_BD_MATERIALSTOCK CS ON CS.FMATERIALID = B.FMATERIALID LEFT JOIN T_BD_MATERIALPRODUCE CP ON CP.FMATERIALID = B.FMATERIALID WHERE --A.FDATE BETWEEN '2023-12-01 00:00:00' AND '2023-12-31 23:59:59' A.FDATE BETWEEN @STARTDATE AND @ENDDATE --更新单位 alter table #TMPMPS add STOREUNITNAME varchar(10) update #TMPMPS SET #TMPMPS.STOREUNITNAME = B_L.FNAME from T_BD_UNIT_L B_L where B_L.FUNITID = #TMPMPS.FSTOREUNITID --alter table #TMPMPS add FPACKUNITNAME varchar(10) --update #TMPMPS set #TMPMPS.FPACKUNITNAME = B_L.FNAME from T_BD_UNIT_L B_L where B_L.FUNITID = #TMPMPS.FPACKUNITID END