DECLARE @sql NVARCHAR(MAX),@where2 NVARCHAR(max)='',@where3 NVARCHAR(max)='', @FStartMonth nvarchar(10), @FEndMonth nvarchar(10) ; DECLARE @begintime DATETIME,@endtime DATETIME; DECLARE @i int=@FStartMonth,@sql2 nvarchar(max)=''; while(@i<=@FEndMonth) BEGIN IF(@i<@FEndMonth) BEGIN SELECT @sql2 +='FMONTH'+CONVERT(nvarchar(10),@i)+'+'; END ELSE BEGIN SELECT @sql2 +='FMONTH'+CONVERT(NVARCHAR(10),@i); END SELECT @i=@i+1; END SELECT t3.FNUMBER AS [客户编码], t4.FNAME AS [客户名称], t5.FNUMBER AS [预算物料组], T1.FCUSTOMERID,t1.FDOCUMENTSTATUS , cc.[FBMMATERIALGROUP],SUM(FRealQty) AS FRealQty ,(SELECT SUM(FREALQTY) FROM dbo.T_SAL_RETURNSTOCK tui LEFT JOIN T_SAL_RETURNSTOCKENTRY tuide ON tui.FID=tuide.FID WHERE tui.FAPPROVEDATE>='2025-05-01' AND tui.FAPPROVEDATE<'2025-06-01' AND tui.FDOCUMENTSTATUS='C' ) ReturnQty ,( select sum(FALLAMOUNT) from VHUB_T_BMGStandCost where 1=1 ) as F_YSZCB ,( select sum(FMATERIALCOSTAMOUNT) from VHUB_T_BMGStandCost where 1=1 ) as F_YSZCB_Z ,( select sum(FLABORCOSTAMOUNT) from VHUB_T_BMGStandCost where 1=1 ) as F_YSCB_G_Z ,( select sum(FFEEAMOUNT) from VHUB_T_BMGStandCost where 1=1 ) as F_YSCB_F_Z FROM T_SAL_OUTSTOCK T1 INNER join T_SAL_OUTSTOCKENTRY T2 ON T1.FID = T2.FID INNER JOIN T_BD_MATERIAL matal2 ON T2.FMATERIALID = matal2.FMATERIALID INNER JOIN VHUB_T_BMMGroupLinkTable cc ON matal2.FMATERIALGROUP = cc.[FMATERIALGROUP] LEFT JOIN T_BD_CUSTOMER t3 ON t1.FCUSTOMERID= t3.FCUSTID LEFT JOIN T_BD_CUSTOMER_L t4 ON t3.FCUSTID = t4.FCUSTID INNER JOIN VHUB_BD_BMMaterialGroup t5 ON cc.[FBMMATERIALGROUP]= t5.FID WHERE T1.FAPPROVEDATE>='2025-05-01' AND t1.FAPPROVEDATE<'2025-06-01' GROUP BY T1.FCUSTOMERID, cc.[FBMMATERIALGROUP],t1.FDOCUMENTSTATUS, t3.FNUMBER , t4.FNAME , t5.FNUMBER --SELECT * FROM VHUB_T_BMMGroupLinkTable -- SELECT * FROM VHUB_BD_BMMaterialGroup --select T1.FID, T1.FBILLNO,T2.FENTRYID,t2.FMaterialID,ff.FNUMBER, FMustQty ,t4.*,T6.* --from T_SAL_OUTSTOCK T1 inner join T_SAL_OUTSTOCKENTRY T2 --inner join T_SAL_OUTSTOCKENTRY_C T3 on T3.FENTRYID = T2.FENTRYID --ON T1.FID = T2.FID -- inner join T_SAL_OUTSTOCKENTRY_CE T4 on T3.FENTRYID = T4.FENTRYID -- left join T_HS_CALDIMENSIONS T5 on T3.FDIMENSIONID = T5.FDIMENSIONID -- left join T_BD_EXPENSE_L T6 on T4.FEXPENSEID = T6.FEXPID and T6.FLOCALEID = 2052 -- left join T_BD_MATERIAL ff on t2.FMaterialID=ff.FMaterialID -- WHERE T1.FAPPROVEDATE>='2025-05-01' AND t1.FAPPROVEDATE<'2025-06-01' --order by T2.FENTRYID desc