以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于 网络环境中避免多人同时编辑的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=30168) |
-- 作者:superman430 -- 发布时间:2013/3/22 10:01:00 -- 关于 网络环境中避免多人同时编辑的问题 If User.Roles = "实习生" Then
为什么实际运行过程中,有的业务记录会提示此行可能已经被删除,无法编辑!,而有的又正常呢? |
-- 作者:狐狸爸爸 -- 发布时间:2013/3/22 10:26:00 -- 后来,帮助补充了一段话:
死锁与强制解锁
如果用户在编辑过程中非正常退出,可能会导致死锁,我们再也无法编辑此行,要解决这个问题,有两个方法:
方法一 增加一个强制解锁按钮,代码为: Tables("员工").Current("编辑者") = Nothing
方法二 将原代码中的: Dim exp As String = "编辑者 Is Null And [_Identify] = " & e.Row("_Identify") 改为: Dim exp As String = "(编辑者 Is Null Or 编辑者 = \'" & User.Name & "\') And [_Identify] = " & e.Row("_Identify") 这样如果某个用户在编辑某行的过程中非正常退出,导致此行被锁死,那么该用户只需重新启动FoxTable,继续编辑此行,然后正常保存或退出,即可解锁。 |