以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 错误提醒 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=140482) |
-- 作者:vimin -- 发布时间:2019/9/6 14:31:00 -- 错误提醒 .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2019.8.3.1 错误所在事件:表,DeliveryN_Table1,DataColChanged 详细错误信息: 调用的目标发生了异常。 索引超出了数组界限。 我开一个窗口时总是收到以上的错误提醒。我在DataColChanged事件只要把以下标红的代码拿掉便没有问题: If e.DataCol.Name = "货物编号" Then If e.NewValue.length > 19 Then Dim sql As new SQLCommand Dim lsb As DataTable sql.C sql.CommandText = "se/ect * fr0m {产品基础货号表} where 基础货号 = \'" & e.NewValue.Substring(0,10) & "\'" lsb = sql.ExecuteReader if lsb.DataRows(0)("毛重") = 0 then
xxxx
endif endif endif 不管我已什么代码,只要用lsb.datarows(0)("毛重"),去取一下重量,变会有这样的提示。 刚开始我以为是产品基础货号表,[毛重]的值是NULL造成的,但我把数据都填成了0,还是一样的提醒。 请问我是哪里问题? |
-- 作者:有点蓝 -- 发布时间:2019/9/6 14:47:00 -- If e.DataCol.Name = "货物编号" Then If e.NewValue > "" AndAlso e.NewValue.length > 19 Then Dim sql As new SQLCommand Dim lsb As DataTable sql.C sql.CommandText = "se/ect * fr0m {产品基础货号表} where 基础货号 = \'" & e.NewValue.Substring(0,10) & "\'" lsb = sql.ExecuteReader If lsb.DataRows.Count > 0 If lsb.DataRows(0)("毛重") = 0 Then |