打印本文 打印本文 关闭窗口 关闭窗口
SQL 以日期动态更新维护的数据,一周排程时间日期设计
作者:武汉SEO闵涛  文章来源:敏韬网  点击数27288  更新时间:2007/11/14 12:58:28  文章录入:mintao  责任编辑:mintao
   Begin

       Select  @Str = @Str + '''' Qnty''''+Convert(varchar, (7-@num2+1)) + '''' = 0,''''

       Set @num2 = @num2-1

   End

  Select @str = Left(@str , Len(@str)-1)

 

--------------插入一周交货排程维护历史------------

  Insert Into Pdl_WeekProcHistory( DateId, Partnum, Revision, Qnty1, Qnty2, Qnty3, Qnty4, Qnty5, Qnty6, Qnty7,

                   Date1,  Date2, Date3, Date4, Date5, Date6, Date7, IOTime, OutPutDate )

  Select t1.DateId, t1.Partnum, t1.Revision, t1.Qnty1, t1.Qnty2, t1.Qnty3, t1.Qnty4, t1.Qnty5, t1.Qnty6, t1.Qnty7,

                  t2.Date1,  t2.Date2, t2.Date3, t2.Date4, t2.Date5, t2.Date6, t2.Date7 , Getdate(), t1.Todate

  From  Pdl_WeekProcedure t1(nolock) , Pdl_WeekProcedureDate t2 (nolock)

  Where t1.Dateid = t2.DateId

 

------------------------更新Pdl_WeekProcedure 数据 ----------------------------

  Exec(''''Update Pdl_WeekProcedure Set '''' + @Str )

 

  Update Pdl_WeekProcedure

    Set DateId = (Select Max(DateId) From Pdl_WeekProcedureDate )

 

-------------------------更新当天出货时间字段--------------------------

Update Pdl_WeekProcedure Set Todate = Null 

  Where Convert(datetime, Convert(varchar,Todate,101)) <> Convert(datetime, Convert(varchar,Getdate(),101))

End

 

--delete Pdl_WeekProcedureDate where dateid=''''2005-01-15 00:00:00.000''''

-- Update Pdl_WeekProcedure set dateid = convert(datetime, convert(varchar, getdate(),101))-1


生成最后数据集合:

/*

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ...  下一页 >> 

打印本文 打印本文 关闭窗口 关闭窗口