Foxtable(狐表)用户栏目专家坐堂 → 全局表锁定行状态改变后的事件代码问题


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

主题:全局表锁定行状态改变后的事件代码问题

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


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
全局表锁定行状态改变后的事件代码问题  发帖心情 Post By:2013/1/6 21:00:00 [只看该作者]

各位老师,

在表的全局事件afterlockdatarow中用了如下代码:

 

'锁定主表行时锁定其关联明细表中所有行
For Each re As Relation In Relations
    If e.DataTable.Name = re.ParentTable.Name Then  '如果是关联主表
        For Each dr As DataRow In e.DataRow.GetChildRows(re.Childtable.name)
            dr.Locked = e.DataRow.Locked
        Next
        Exit For
    End If
Next

 

但有的关联表起作用,有的关联表不起作用?是不是有bug?

 


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

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

谢谢!


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


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

1、你多了一行代码,应该:

 

For Each re As Relation In Relations
    If e.DataTable.Name = re.ParentTable.Name Then  '如果是关联主表
        For Each dr As DataRow In e.DataRow.GetChildRows(re.Childtable.name)
            dr.Locked = e.DataRow.Locked
        Next
    End If
Next

 

2、问题收到,下次改进。


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


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2013/1/7 9:36:00 [只看该作者]

谢谢狐爸!去掉exit for后还是一样,有的表起作用,有的不起作用
[此贴子已经被作者于2013-1-7 9:40:15编辑过]

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


加好友 发短信
等级:四尾狐 帖子:976 积分:8527 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2013/1/7 11:39:00 [只看该作者]

上传例子,锁定及解锁行的代码在全局事件中

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:查询后增加临时列及父子表同时锁定解锁行问题.foxdb

[此贴子已经被作者于2013-1-7 11:39:41编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/7 12:51:00 [只看该作者]

 测试了一下,全局表事件没有触发。估计是不对应造成的。

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


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

明白了,这两个事件后来改的,可能忘记加入开启开关了,下次搞定
[此贴子已经被作者于2013-1-7 12:53:44编辑过]

 回到顶部