Foxtable(狐表)用户栏目专家坐堂 → 请教按用户角色设置允许编辑的列


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

主题:请教按用户角色设置允许编辑的列

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


加好友 发短信
等级:三尾狐 帖子:603 积分:4392 威望:0 精华:0 注册:2018/1/3 16:03:00
请教按用户角色设置允许编辑的列  发帖心情 Post By:2022/4/27 9:20:00 [只看该作者]

蓝老师您好!再请教按用户角色设置允许编辑列的问题

假设用户张三有"提交"角色,李四有"审核"角色,王五有"批准"角色,我要实现只有张三可以编辑1、2、3列,只有李四可以编辑4、5、6列,只有王五可以编辑7、8、9列,其他用户不可以编辑1-9列,但可以编辑其他列如十以后的列,我用下面的代码,没能实现以上要求。结果是张三、李四、王五任何列都可编辑,其他用户不可编辑。敬请蓝老师指教

'按用户的角色指定不可编辑的列

Dim Filter As String

Dim bj As String

If User.IsRole ("提交") Then      '如果用户有提交角色

     Select Case e.Col.Name

            Case "第一列","第二列","第三列"

                e.Cancel = False       '可以编辑

        End Select

ElseIf User.IsRole ("审核") Then     '如果用户有审核角色

       Select Case e.Col.Name

            Case "第四列","第五列","第六列"

                e.Cancel = False       '可以编辑

        End Select

ElseIf User.IsRole ("批准") Then     '如果用户有批准角色

        Select Case e.Col.Name

            Case "第七列","第八列","第九列"

                e.Cancel = False     '可以编辑用False

        End Select

Else

    e.Cancel = True  '其他用户都不可编辑

End If


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


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/27 9:59:00 [只看该作者]


Select Case e.Col.Name
    
    Case "第一列", "第二列", "第三列"
        If User.IsRole ("提交") = False Then
            e.Cancel = True 
        End If
    Case "第四列", "第五列", "第六列"
        If User.IsRole ("审核") = False Then
            e.Cancel = True 
        End If
    Case "第七列", "第八列", "第九列"
        If User.IsRole ("批准") = False Then
            e.Cancel = True 
        End If
End Select

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


加好友 发短信
等级:三尾狐 帖子:603 积分:4392 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2022/4/27 10:11:00 [只看该作者]

好,我试试,谢谢蓝老师!

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


加好友 发短信
等级:三尾狐 帖子:603 积分:4392 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2022/4/27 10:20:00 [只看该作者]

蓝老师写的代码,太棒了!简洁、实用,满足了我的条件要求。再次谢谢!

 回到顶部