以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]代码运行出错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=85976) |
-- 作者:yyzlxc -- 发布时间:2016/6/7 11:18:00 -- [求助]代码运行出错 下面代码运行到黄色标记处出错,如何解决,请各位老师指教,谢谢!! For Each dr As DataRow In DataTables("扎包记录").DataRows Dim pr As DataRow = DataTables("扎包记录").Find("工位ID = \'" & dr("工位ID") & "\' and 采集序号 < \'" & dr("采集序号") & "\'","采集序号 Desc") \'同批次工位的上一行 Dim pr2 As DataRow = DataTables("扎包记录").Find("日期 = \'" & dr("日期") & "\' and 工位ID = \'" & dr("工位ID") & "\' And 午休标记 = 1")\'查找当天本工位午休标记 \'填充插拔卡时间和午休标记 If dr.IsNull("插卡时间") Then If pr("拔卡时间").AddSeconds(dr("工位工时")) > pr("日期") &" "& swsgsj And pr2 Is Nothing \'判断本节拍结束时间大于中午收工时间以及当天本工位无午休标记 If dr("日期") = pr("日期") Then dr("插卡时间") = pr("拔卡时间").AddSeconds(Rand.Next(2,6)) Else dr("插卡时间") = pr("拔卡时间").AddSeconds((dr("日期") - pr("日期")).TotalSeconds + Rand.Next(2,6)) End If dr("拔卡时间") = CDate(dr("插卡时间")).AddSeconds(dr("工位工时") * Rand.Next(100 - fdxs,100 + fdxs) / 100 + wxjg) dr("午休标记") = 1 \'添加午休标记 Else If dr("日期") = pr("日期") Then dr("插卡时间") = pr("拔卡时间").AddSeconds(Rand.Next(2,6)) Else dr("插卡时间") = pr("拔卡时间").AddSeconds((dr("日期") - pr("日期")).TotalSeconds + Rand.Next(2,6)) End If dr("拔卡时间") = CDate(dr("插卡时间")).AddSeconds(dr("工位工时") * Rand.Next(100 - fdxs,100 + fdxs) / 100) End If If pr("午休标记") = 1 Then dr("插插间隔") = (dr("插卡时间") - pr("插卡时间")).TotalSeconds() - wxjg Else dr("插插间隔") = (dr("插卡时间") - pr("插卡时间")).TotalSeconds() End If End If If dr.IsNull("插拔间隔") Then If dr("午休标记") = 1 Then dr("插拔间隔") = (dr("拔卡时间") - dr("插卡时间")).TotalSeconds() - wxjg Else dr("插拔间隔") = (dr("拔卡时间") - dr("插卡时间")).TotalSeconds() End If End If If dr.IsNull("插卡时间") = False Then dr("拔插间隔") = dr("插插间隔") - pr("插拔间隔") dr("工效") = pr("工位工时") / dr("插插间隔") End If Next |
-- 作者:大红袍 -- 发布时间:2016/6/8 9:58:00 -- 加上判断
If pr IsNot Nothing Then
Else
End If |