IF EXISTS(SELECT * FROM SYS.PROCEDURES WHERE NAME='PROC_ProductionSchedule') DROP PROCEDURE dbo.PROC_ProductionSchedule; GO CREATE PROCEDURE PROC_ProductionSchedule @TableName varchar(100) ,@STARTDATE date ,@ENDDATE date ,@LCID int ,@SeqFld varchar(200) --,@HasId int output AS BEGIN DECLARE @HasId int DECLARE @SQL VARCHAR(2000) set @HasId = 0 IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[T_PLAN_PLANPLMRPT]') AND type IN ('U')) BEGIN EXEC PROC_INQUIRE_PLANPLMRPT @STARTDATE,@ENDDATE,@LCID,@SeqFld, @HasId END IF @HasId = 0 BEGIN EXEC PROC_INQUIRPLMTMPRTP @STARTDATE,@ENDDATE,@LCID,@SeqFld end SET @sql = ' select t0.FID ,FENTRYID ,FBILLNO ,FMATERIALID ,FNAME ,FSPECIFICATION ,ShelfLife ,0 AS StandardLot --标准批量 --,FLOTYIELD --每批产量 --,FPACKUNITCONVERRATIO -- 包装规格 --,CAST(FPACKUNITCONVERRATIO AS VARCHAR)+STOREUNITNAME+''/''+FPACKUNITNAME as FPACKUNITCONVT --包装规格 --,FPACKUNITID --单位 ,FSTOREUNITID ,STOREUNITNAME ,0 AS SAFESTOCKCOUNT --安全库存量-件 ,CAST(FSAFESTOCK AS INT) AS SAFESTOCK ,0 AS M01 ,0 AS S01 ,0 AS S02 ,0 AS S03 ,0 AS InStockQty ,0 AS InProductionQty ,0 AS TotalStockQty --,(FOrderQty / CP.FPACKUNITCONVERRATIO) AS OrderLotQty -- ''系统计划生产批数'' --,(FFirmQty / CP.FPACKUNITCONVERRATIO) AS FirmLotQty -- ''确认计划生产批数'' ,FFirmQty --确认计划生产数量 ,FFirmQty as FirmLotQty --确认生产批数 ,FOrderQty as OrderLotQty --计划生产批数 ,'+@SeqFld+' into '+ @TableName +' From #TMPMPS t0 ' EXECUTE(@sql) DROP TABLE #TMPMPS END