Foxtable(狐表)用户栏目专家坐堂 → 在aftercolchange中设置了代码后再筛选就出错


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

主题:在aftercolchange中设置了代码后再筛选就出错

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


加好友 发短信
等级:幼狐 帖子:155 积分:1488 威望:0 精华:0 注册:2017/1/31 17:27:00
在aftercolchange中设置了代码后再筛选就出错  发帖心情 Post By:2017/3/18 14:38:00 [只看该作者]

在全局表设置了如下代码:

 

Select Case e.Table.Name
    Case "采购单","销售单"
        Dim dr As DataRow = DataTables("商品信息表").Find("产品ID='" & e.Table.Current("产品ID") & "'")
        If dr IsNot Nothing  Then
            StatusBar.Message1 = "当前库存:" & dr("库存_架数量") & "架," & dr("库存_片数量") & "片."
        Else
            StatusBar.Message1="未找到当前产品,请检查产品是否录入正确."
        End If
End Select

 

代码在表中能正确执行,但是在采购单,和销售单中筛选时,出现错误如下。

 

.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2016.7.29.1
错误所在事件:全局表事件,AfterSelChange
详细错误信息:
Object reference not set to an instance of an object.

什么情况?


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/3/18 15:25:00 [只看该作者]

if e.Table.Current isnot nothing then

原来的代码

endif


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


加好友 发短信
等级:幼狐 帖子:155 积分:1488 威望:0 精华:0 注册:2017/1/31 17:27:00
  发帖心情 Post By:2017/3/18 15:35:00 [只看该作者]

 

问题解决了。图片点击可在新窗口打开查看

 

筛选之后当前行不见了,所以出错了?但是要筛选的行不是当前行吗?还是不明白。


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


加好友 发短信
等级:幼狐 帖子:155 积分:1488 威望:0 精华:0 注册:2017/1/31 17:27:00
  发帖心情 Post By:2017/3/18 18:20:00 [只看该作者]

问题好像没有解决彻底啊。偶尔还是不正常。采购单可以筛选,销售单不可以图片点击可在新窗口打开查看

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


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

建议改用CurrentChanged事件,代码为:

if e.Table.Current Isnot Nothing then
   ‘原来的代码
end if

 回到顶部