以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 新版DataRowLockedChanged 事件的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=47156) |
-- 作者:zpx_2012 -- 发布时间:2014/3/5 14:45:00 -- 新版DataRowLockedChanged 事件的问题 使用新版后每张表单增加行时都会弹出出错对话框,原来旧版一直使用都是正常的。 全局表事件DataRowLockedChanged 的代码如下: \'主表锁定时同步锁定其所有子表 If e.DataTable.name = Mtb & "_主表" AndAlso Ctb > "" Then \'如果是主表且有子表 Dim drs As List (of DataRow) drs = DataTables(Mtb & "_明细").Select(Rcol & "= \'" & Tables(Mtb & "_主表").Current(Rcol) & "\'") If drs IsNot Nothing Then For Each Cdr As DataRow In drs Cdr.Locked = e.DataRow.Locked Next End If End If
|
-- 作者:Bin -- 发布时间:2014/3/5 14:48:00 -- 呵呵,这个版本无关. 你检查一下 Mtb Ctb 是否已经声明并且已经赋值.
|
-- 作者:Bin -- 发布时间:2014/3/5 14:48:00 -- 还有Rcol |
-- 作者:zpx_2012 -- 发布时间:2014/3/5 14:57:00 -- 不会的,都有值的,这个项目已经用了几个月了,都没有问题,就是升级后才这样的。还是请检查一下这个事件吧。 |
-- 作者:Bin -- 发布时间:2014/3/5 14:58:00 -- 这些都没有经过更改,而且所有的客户都在用. 请上个例子让我们分析一下吧. 如果是BUG的话我们会尽快修复的. |
-- 作者:e-png -- 发布时间:2014/3/5 15:26:00 -- Ctb 这个是和 DataTables(Mtb & "_明细") 一致的“子表”吗。 |
-- 作者:zpx_2012 -- 发布时间:2014/3/5 16:06:00 -- 不一至,ctb是后台数据表,而 DataTables(Mtb & "_明细") 是窗口中名称为“明细”的sqltable的对应窗口表名。ctb的数据fill在 DataTables(Mtb & "_明细")中而已。 反正现在用新版出现了很多未将对象引用设置到对象实例的问题。点击菜单中的很多按钮都会。
|
-- 作者:狐狸爸爸 -- 发布时间:2014/3/5 16:08:00 -- 2014很稳定,大部分人都升级了的。 你先主动分析一下吧:
http://www.foxtable.com/help/topics/1485.htm
|
-- 作者:zpx_2012 -- 发布时间:2014/3/5 17:05:00 -- 谢谢各位,修改了代码,问题解决。但奇怪的是原来旧版使用很久也没有出错呢! |
-- 作者:Bin -- 发布时间:2014/3/5 17:05:00 -- 可能是当时没遇到这个情况. |