zoukankan      html  css  js  c++  java
  • 订单---查询根椐当前产能和假期,完成订单的时间

    USE [erpdb1]
    GO
    /****** Object:  StoredProcedure [dbo].[sp_orderdate]    Script Date: 12/29/2014 15:41:42 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
     ALTER  proc  [dbo].[sp_orderdate]
     as
     declare cu_orderpur1019  cursor for SELECT  holiday FROM a_a1ErpHoliday
     declare @ho_day datetime     --临时取得的天数
     declare @wk_day int          --生产要用的天数
     declare @real_day int        --实际工时天数
     declare @to_wkdate datetime  --最初的天数
     declare @total_feiyong int   --总的费用
     begin
     
      update a_a1ErpDelivery set curdate =GETDATE(); 
      -----已确认未生产的情况
      select @total_feiyong =  CEILING(isnull(SUM(dingdanzhu.clf_),0)) FROM dingdanzhu with (nolock) left outer join  fltab_  on dingdanzhu.biaodanid = fltab_.biaodanid    WHERE  ( ( dingdanzhu.tg = '未' ) )    and cx IS   NULL   and cxqr IS not  NULL   and  qlstatus IS  NULL   and   cw   is  not  null
        and   (bz  <>  'mn'  and   bz  <>  '模拟下单'   and   bz  <>  '模拟下单!') ; 
      -------产线未确认的情况
      select @total_feiyong = @total_feiyong + CEILING(isnull(SUM(dingdanzhu.clf_),0))   FROM dingdanzhu with (nolock) left outer join   fltab_  on dingdanzhu.biaodanid = fltab_.biaodanid   
         where  cxqr IS  NULL   and  qlstatus IS  NULL   and    cw   is  not  null     and   (bz  <>  'mn'  and   bz  <>  '模拟下单'   and   bz  <>  '模拟下单!') ;
      -------不欠未配的情况 
      select @total_feiyong = @total_feiyong + CEILING(isnull(SUM(dingdanzhu.clf_),0))  FROM dingdanzhu with (nolock) left outer join   fltab_  on dingdanzhu.biaodanid = fltab_.biaodanid     where  qlstatus is  null  and   cw  is not null  and  ckdate IS NULL      and   (bz  <>  'mn'  and   bz  <>  '模拟下单'   and   bz  <>  '模拟下单!') ;
                                             
      -------欠料红色的情况
      select @total_feiyong = @total_feiyong + CEILING(isnull(SUM(dingdanzhu.clf_),0))  FROM dingdanzhu with (nolock) left outer join   fltab_  on dingdanzhu.biaodanid = fltab_.biaodanid    WHERE    qlstatus = 't'   and   (bz  <>  'mn'   and   bz  <>  '模拟下单'   and   bz  <>  '模拟下单!') ;
     
      select @total_feiyong = CEILING(@total_feiyong /10000);
      select  @wk_day=  ceiling(@total_feiyong/erpcapacity) from a_a1ErpDelivery;
      set @real_day = @wk_day;  
      set @to_wkdate = dateadd(day,@wk_day,GETDATE())  
       open cu_orderpur1019  
       fetch next from cu_orderpur1019 into @ho_day
      while @@fetch_status = 0 
      begin  
         if ( @ho_day > GETDATE() and @ho_day < @to_wkdate )
         begin
          set @wk_day = @wk_day +1 ; 
          set @to_wkdate = dateadd(day,1,@to_wkdate)
         end
         fetch next from cu_orderpur1019 into @ho_day 
      end  
       update a_a1ErpDelivery set complatedate = @to_wkdate,wkday = @wk_day,realday =@real_day,erporder=@total_feiyong,curdate =GETDATE() where cn=1;
       close cu_orderpur1019
       DEALLOCATE cu_orderpur1019      
      
     end
     

  • 相关阅读:
    遍历数据类型数组方式
    for 循环 和for..in循环遍历数组 的区别
    多个区域内有相同属性名称子元素,同一区域内 操作DOM子集 使用$("选择器",context)方法
    CSS 使用技巧
    JavaScript 动态加载页面 js文件
    angular2环境配置
    在路上●我的年青●逐步前进
    ARM v8-A 系列CPU的MMU隐射分析
    ARM Cortex-A53 Cache与内存的映射关系以及Cache的一致性分析
    二维图像的投影和图像重建分析之傅里叶变换法
  • 原文地址:https://www.cnblogs.com/szlixin/p/4191819.html
Copyright © 2011-2022 走看看