Foxtable(狐表)用户栏目专家坐堂 → 没有要访问的 Current 数据


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

主题:没有要访问的 Current 数据

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


加好友 发短信
等级:六尾狐 帖子:1499 积分:9716 威望:0 精华:0 注册:2014/12/18 16:12:00
没有要访问的 Current 数据  发帖心情 Post By:2017/7/29 16:55:00 [只看该作者]

今天我升级了foxtable的版本,结果,我在好多数据表里面新增加数据行时,都会出现如下警告:
.NET Framework 版本:2.0.50727.8669
Foxtable 版本:2017.7.28.1
错误所在事件:表,指令单总表,DataColChanged
详细错误信息:
调用的目标发生了异常。
没有要访问的 Current 数据。

或者出现如下警告:

.NET Framework 版本:2.0.50727.8669
Foxtable 版本:2017.7.28.1
错误所在事件:表,计件单价,DataColChanging
详细错误信息:
调用的目标发生了异常。
没有要访问的 Current 数据。

这是为什么?如何解决?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106957 积分:544004 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/7/29 17:04:00 [只看该作者]

是不是用到了e.DataRow("第一列") = nothing这类的判断

改为

e.DataRow.IsNull("第一列") 

具体代码贴出来看看

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


加好友 发短信
等级:二尾狐 帖子:510 积分:4239 威望:0 精华:0 注册:2012/11/28 16:03:00
  发帖心情 Post By:2017/7/29 21:47:00 [只看该作者]

和我遇到的问题一样,之前正常,升级后出错


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


加好友 发短信
等级:二尾狐 帖子:567 积分:4194 威望:0 精华:0 注册:2015/5/13 8:32:00
  发帖心情 Post By:2017/7/29 22:19:00 [只看该作者]

 DataColChanged 

DataColChanging

用 E 参数

e.datarow 来代替 
Current ( CurrentTable.Current )

--------------------------------------------------------------------

如果有 E 参数 有 table 最好用

e.table 代替  
CurrentTable
e.table.Current  代替  CurrentTable.Current

--------------------------------------------------------------------

然后就是要判断 这行是否存在或者为空!则不执行!

if e.DataRow.IsNull("第一列")  then return '不执行


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


加好友 发短信
等级:二尾狐 帖子:388 积分:5098 威望:0 精华:0 注册:2013/11/2 0:01:00
回复:(cbt)?DataColChanged? DataColCha...  发帖心情 Post By:2017/7/29 23:59:00 [只看该作者]

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=104437&authorid=0&page=0&star=3

 

压根没有使用CurrentTable或者current行,也会这样

 

这是我项目的所有代码:

只要新增行,就报错了

 

表A_DataColChanged

 

If e.DataCol.Name ="第一列"

    If e.DataRow.Isnull("第一列") =False  Then

        MessageBox.show(e.DataRow("第一列"))

    End If

End If

 

表A_DataRowAdding

 

e.DataRow("第一列") =222

 


图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2017/7/30 0:00:10编辑过]

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


加好友 发短信
等级:二尾狐 帖子:567 积分:4194 威望:0 精华:0 注册:2015/5/13 8:32:00
  发帖心情 Post By:2017/7/30 8:17:00 [只看该作者]

我觉得那里用
NewValue: Object类型,表示新的值。
OldValue: Object类型,表示旧的值

这2个 E参数为好!
[此贴子已经被作者于2017/7/30 8:23:14编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/7/30 9:26:00 [只看该作者]

回复楼上,那些是bug,等候修复。

 回到顶部