Foxtable(狐表)用户栏目专家坐堂 → [求助]代码运行出错


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

主题:[求助]代码运行出错

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


加好友 发短信
等级:七尾狐 帖子:1530 积分:10633 威望:0 精华:0 注册:2008/9/24 11:16:00
[求助]代码运行出错  发帖心情 Post By: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



图片点击可在新窗口打开查看此主题相关图片如下:捕获16.png
图片点击可在新窗口打开查看




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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/8 9:58:00 [只看该作者]

加上判断

 

If pr IsNot Nothing Then

 

Else

 

End If


 回到顶部