Foxtable(狐表)用户栏目专家坐堂 → [求助]请教自动计算每行工序的工序交期的代码(急)


  共有10793人关注过本帖树形打印复制链接

主题:[求助]请教自动计算每行工序的工序交期的代码(急)

帅哥哟,离线,有人找我吗?
dyf0429
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:51 积分:597 威望:0 精华:0 注册:2011/12/10 18:34:00
[求助]请教自动计算每行工序的工序交期的代码(急)  发帖心情 Post By:2012/2/26 13:27:00 [只看该作者]

狐狸爸爸:您好

请教自动计算工序交期的代码(急)!!!先谢谢您了

 

  工序交期的计算条件说明:

      1/工序表中的工序是一个不定数,可能要经过多道工序,也有可能经过4道或5道工序不等

      2/工序表最后一行的工序交期=订单交期默认的下班时间;xxxx年-xx月-xx日 17:00

      3/倒数次行的工序交期=最后一行的工序交期-最后一行的加工耗时(天);说明:每天按8 小时计;

4/依次类推,倒数计算每道工序的工序交期,直到计算出首工序的工序交期;

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:请教自动计算工序交期的代码(急).zip


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/2/26 18:17:00 [只看该作者]

很简单,几行代码搞定:

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:请教自动计算工序交期的代码(急).table

 

提示: 随便双击订单交期列的某单元格,即可自动计算同一订单的工序交期。


 回到顶部
帅哥哟,离线,有人找我吗?
dyf0429
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:51 积分:597 威望:0 精华:0 注册:2011/12/10 18:34:00
  发帖心情 Post By:2012/2/26 18:41:00 [只看该作者]

狐狸爸爸:虽然我还没看,但我太高兴了,太爱你~~~谢谢您!


 回到顶部
帅哥哟,离线,有人找我吗?
dyf0429
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:51 积分:597 威望:0 精华:0 注册:2011/12/10 18:34:00
  发帖心情 Post By:2012/2/27 9:17:00 [只看该作者]

狐狸爸爸:不好意思,还得请教你,我这个ERP软件供应商用的是SQL,但是日期搞了一个整数型,工序交期按你指导的代码,没有办法实现工序交期自动计算;我的代码是:

 

If e.Col.name ="Finish2"  AndAlso e.Row.Isnull("MainCode") = False AndAlso e.Row.Isnull("Finish2") = False Then
    Dim drs As List(of DataRow) = e.Table.DataTable.Select("MainCode = '" & e.Row("MainCode") & "'")
    Dim dr As DataRow = drs(drs.count -1)
    dr("Finish1") = dr("Finish2").AddSeconds(17)
    For i As Integer = drs.count - 2 To 0 Step -1
        drs(i)("Finish1") = drs(i+1)("Finish1").AddSeconds(-drs(i+1)("uFinshAmount") * 24)
    Next
End If

我知道这段代码肯定有问题的,但是不知如何入手处理这个问题,给你添麻烦了!


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/2/27 9:55:00 [只看该作者]

If e.Col.name ="Finish2" AndAlso e.Row.Isnull("MainCode") = False AndAlso e.Row.Isnull("Finish2") = False Then
          Dim drs As List(of DataRow) = e.Table.DataTable.Select("MainCode = '" & e.Row("MainCode") & "'")
          Dim dr As DataRow = drs(drs.count -1)
          dr("Finish1") = dr("Finish2") + 17 * 3600
          For i As Integer = drs.count - 2 To 0 Step -1
                  drs(i)("Finish1") = drs(i+1)("Finish1") - drs(i+1)("uFinshAmount") * 24 * 3600
          Next
End If


 回到顶部
客人(122.227.*.*)
  6楼


  发帖心情 Post By:2012/2/27 10:29:00 [只看该作者]

狐狸爸爸:由于与ERP的数据库SQL的连接导致在foxtable中的日期类型为整数性,这段代码还是不能用,并不是简单的天换算成秒的问题;


 


 回到顶部
帅哥哟,离线,有人找我吗?
dyf0429
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:51 积分:597 威望:0 精华:0 注册:2011/12/10 18:34:00
  发帖心情 Post By:2012/2/27 10:30:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:外部数据源日期字段为整数型计算工序交期.zip


 回到顶部
帅哥哟,离线,有人找我吗?
dyf0429
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:51 积分:597 威望:0 精华:0 注册:2011/12/10 18:34:00
  发帖心情 Post By:2012/2/27 14:08:00 [只看该作者]

狐狸爸爸:有时间帮忙解决一下,这个问题解决了,我就可以开始向公司请款了


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/2/27 14:24:00 [只看该作者]

一样的双击计算:

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:请教自动计算工序交期的.rar

[此贴子已经被作者于2012-2-27 14:23:58编辑过]

 回到顶部