以文本方式查看主题

-  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 事件的问题
使用新版后每张表单增加行时都会弹出出错对话框,原来旧版一直使用都是正常的。

图片点击可在新窗口打开查看此主题相关图片如下:360截图20140305144414616.jpg
图片点击可在新窗口打开查看

全局表事件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
--  
不会的,都有值的,这个项目已经用了几个月了,都没有问题,就是升级后才这样的。还是请检查一下这个事件吧。

图片点击可在新窗口打开查看此主题相关图片如下:360截图20140305145631966.jpg
图片点击可在新窗口打开查看


--  作者: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
--  
可能是当时没遇到这个情况.