Foxtable(狐表)用户栏目专家坐堂 → 请教老师为什么Tables("人员表")并没有被锁定


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

主题:请教老师为什么Tables("人员表")并没有被锁定

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
请教老师为什么Tables("人员表")并没有被锁定  发帖心情 Post By:2015/3/25 21:15:00 [只看该作者]

请教老师:
人员表 - AfterLoadTableSetting  事件中,全局变量 _UserGroup = “‘其它操作人员’”

下面代码执行后,Tables("人员表")并没有被锁定,请教问题出在什么地方?
'确定表及记录的编辑权限
If _UserGroup = "系统管理员" Then
    With  Tables("人员表")
        .AllowEdit = True
        .Cols("用户分组").AllowEdit = True
        .Cols("用户姓名").AllowEdit = True
        .Cols("部门编号").AllowEdit = False
        .Cols("部门编号").Visible = True
        .Cols("部门").AllowEdit = False
        .Cols("用户密码").AllowEdit = True
        .Cols("创建者ID").AllowEdit = False
        .Cols("创建者名称").AllowEdit = False
        .Cols("已登录").Visible = True
        .Cols("编辑者").Visible = True
        .Cols("编辑者").AllowEdit = False
        .Cols("IP地址").AllowEdit = False
        .Cols("IP地址").Visible = True
        .Cols("范围").Visible = True
    End With
Else
    If _UserGroup Like "*管理员*"  Then
        With  Tables("人员表")
            .AllowEdit = True
            .Cols("用户分组").AllowEdit = True
            .Cols("用户姓名").AllowEdit = True
            .Cols("部门编号").AllowEdit = False
            .Cols("部门编号").Visible = True
            .Cols("部门").AllowEdit = False
            .Cols("用户密码").AllowEdit = False
            .Cols("创建者ID").AllowEdit = False
            .Cols("创建者名称").AllowEdit = False
            .Cols("已登录").Visible = False
            .Cols("编辑者").Visible = False
            .Cols("编辑者").AllowEdit = False
            .Cols("IP地址").AllowEdit = False
            .Cols("IP地址").Visible = False
            .Cols("范围").Visible = False
        End With
     Else
             e.Table.AllowEdit = False
           ' .Cols("用户分组").AllowEdit = False
           ' .Cols("用户姓名").AllowEdit = False
           ' .Cols("部门编号").AllowEdit = False
           ' .Cols("部门编号").Visible = True
           ' .Cols("部门").AllowEdit = False
           ' .Cols("用户密码").AllowEdit = False
           ' .Cols("创建者ID").AllowEdit = False
           ' .Cols("创建者名称").AllowEdit = False
           ' .Cols("已登录").Visible = False
           ' .Cols("编辑者").Visible = False
           ' .Cols("编辑者").AllowEdit = False
           ' .Cols("IP地址").AllowEdit = False
           ' .Cols("IP地址").Visible = False
           ' .Cols("范围").Visible = False
       ' End With
    End If
End If

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


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

  代码没有问题,你单独在命令窗口运行代码是否有效?

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2015/3/25 21:19:00 [只看该作者]

后来在倒数第4行增加了一个消息框,发现每次打开窗口,消息框要弹出2次,好象 AfterLoadTableSetting事件的代码执行了2次似的,但表就是不锁定。

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2015/3/25 21:20:00 [只看该作者]

没有在命令窗口试过,但设置属性时可以锁定

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


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

以下是引用lzzhx在2015/3/25 21:19:00的发言:
后来在倒数第4行增加了一个消息框,发现每次打开窗口,消息框要弹出2次,好象 AfterLoadTableSetting事件的代码执行了2次似的,但表就是不锁定。

 

单独执行

 

DataTables("人员表").AllowEdit = False

 

------------------

 

应该是你表名写错了,注意是不是副本表。


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2015/3/25 21:24:00 [只看该作者]

在命令窗口执行后表锁定了。
不是副本表

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


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

 直接去afteropenproject写入代码,有可能是你其它地方重新设置了其可以编辑了。

 

DataTables("人员表").AllowEdit = False


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2015/3/25 21:26:00 [只看该作者]

同样的代码,在命令窗口执行后表就锁定了,但放在 AfterLoadTableSetting事件中表就锁不住

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


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

 呃,肯定是你其它地方重新设置了其可以编辑了。


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2015/3/25 21:32:00 [只看该作者]

加了1个消息框,执行后出现2次消息框,程序执行了2遍,就是找不到原因



'确定表及记录的编辑权限
If _UserGroup = "系统管理员" Then
    With  Tables("人员表")
        .AllowEdit = True
        .Cols("用户分组").AllowEdit = True
        .Cols("用户姓名").AllowEdit = True
        .Cols("部门编号").AllowEdit = False
        .Cols("部门编号").Visible = True
        .Cols("部门").AllowEdit = False
        .Cols("用户密码").AllowEdit = True
        .Cols("创建者ID").AllowEdit = False
        .Cols("创建者名称").AllowEdit = False
        .Cols("已登录").Visible = True
        .Cols("编辑者").Visible = True
        .Cols("编辑者").AllowEdit = False
        .Cols("IP地址").AllowEdit = False
        .Cols("IP地址").Visible = True
        .Cols("范围").Visible = True
    End With
Else
    If _UserGroup Like "*管理员*"  Then
        With  Tables("人员表")
            .AllowEdit = True
            .Cols("用户分组").AllowEdit = True
            .Cols("用户姓名").AllowEdit = True
            .Cols("部门编号").AllowEdit = False
            .Cols("部门编号").Visible = True
            .Cols("部门").AllowEdit = False
            .Cols("用户密码").AllowEdit = False
            .Cols("创建者ID").AllowEdit = False
            .Cols("创建者名称").AllowEdit = False
            .Cols("已登录").Visible = False
            .Cols("编辑者").Visible = False
            .Cols("编辑者").AllowEdit = False
            .Cols("IP地址").AllowEdit = False
            .Cols("IP地址").Visible = False
            .Cols("范围").Visible = False
        End With
     Else
            Tables("人员表").AllowEdit = False
           ' .Cols("用户分组").AllowEdit = False
           ' .Cols("用户姓名").AllowEdit = False
           ' .Cols("部门编号").AllowEdit = False
           ' .Cols("部门编号").Visible = True
           ' .Cols("部门").AllowEdit = False
           ' .Cols("用户密码").AllowEdit = False
           ' .Cols("创建者ID").AllowEdit = False
           ' .Cols("创建者名称").AllowEdit = False
           ' .Cols("已登录").Visible = False
           ' .Cols("编辑者").Visible = False
           ' .Cols("编辑者").AllowEdit = False
           ' .Cols("IP地址").AllowEdit = False
           ' .Cols("IP地址").Visible = False
           ' .Cols("范围").Visible = False
       ' End With
         MessageBox.Show("试验!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning)
    End If
End If

 回到顶部
总数 17 1 2 下一页