Foxtable(狐表)用户栏目专家坐堂 → 请教


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

主题:请教

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
请教  发帖心情 Post By:2018/1/12 15:33:00 [只看该作者]

老师,我在PrepareEdit事件中写了这样的代码,想在打开表时解锁所有的行,但为什么不执行呢,打开表后,每条记录依然是锁定的状态。

 

If user.name = "校长" Or user.name="开发者" Then
    Tables("出差记录").AllowEdit = True
End If


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


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

AfterOpenProject事件

 

For Each r As Row In Tables("表A").rows
    r.Locked = False
Next


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/1/12 15:55:00 [只看该作者]

这样不是以谁登录都可以解锁了吗?


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


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

以下是引用nxqtxwz在2018/1/12 15:55:00的发言:

这样不是以谁登录都可以解锁了吗?

 

你再加上user.name的条件,不就好了?


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/1/12 16:09:00 [只看该作者]

老师,我加上了怎么不起作用呀。不知是哪里有问题,这是我的代码:

If Syscmd.Project.Update(False,False) = False Then '如果没有升级
    BaseMainForm.controls("C1Ribbon1").visible = False    '关闭系统窗口
    Tables("出差记录").Sort = "[_Identify] desc"
    If user.name = "校长" Or user.name="开发者" Then
        For Each r As Row In Tables("出差记录").rows
            r.Locked = False
        Next
    End If
End If


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


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

打开命令窗口执行下面代码有没问题?

 

    msgbox(user.name)

    If user.name = "校长" Or user.name="开发者" Then
        For Each r As Row In Tables("出差记录").rows
            r.Locked = False
        Next
    End If


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/1/12 16:18:00 [只看该作者]

在窗口运行,以谁登录都可以解锁。

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/1/12 16:24:00 [只看该作者]

老师,找到了问题,程序没问题。是因为以开发者登录就将记录全部解锁了,所以后面以谁登录都是解锁状态。应该在退出时再锁定,这样就解决了。谢谢老师指导。

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2018/1/12 16:41:00 [只看该作者]

老师,我要是解锁选中的当前行,这样写行吗?

PrepareEdit 事件中:

If user.name = "校长" Or user.name="开发者" Then
    Dim r As Row = Tables("出差记录").Current
    r.Locked = False
End If


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


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

建议写到表格的click事件

 

If user.name = "校长" Or user.name="开发者" Then
    Dim r As Row = e.row
    r.Locked = False
End If


 回到顶部