以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]Select Case User.roles  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104306)

--  作者:lgj716330
--  发布时间:2017/7/27 9:49:00
--  [求助]Select Case User.roles
Select Case User.roles 
    Case "财务经理","产量统计","成本会计","工资统计"
        DataTables("列表项目").AllowEdit = False
End Select
上述代码没起作用

标颜色的这句不能一起这样写吗,一定要一个一个角色分开写吗

--  作者:有点甜
--  发布时间:2017/7/27 9:55:00
--  

 你的用户角色,一个用户可能有多个值?如果 "经理,财务,统计" ?

 

 如果是多个值,必须用contains判断

 

If user.Roles.contains("经理") orelse user.Roles.contains("财务") Then

[此贴子已经被作者于2017/7/27 9:55:31编辑过]

--  作者:lgj716330
--  发布时间:2017/7/27 10:14:00
--  
哦,明白了
--  作者:lgj716330
--  发布时间:2017/7/28 13:09:00
--  
If user.Roles.contains("会计") Then
        DataTables("列表项目").AllowEdit = True
Else
        DataTables("列表项目").AllowEdit = False
End If
If user.Roles.contains("统计") Then
        DataTables("入库表").AllowEdit = True
Else
        DataTables("入库表").AllowEdit = False
End If


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170728130841.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170728130848.png
图片点击可在新窗口打开查看

什么原因呢

--  作者:有点甜
--  发布时间:2017/7/28 14:24:00
--  

If user.Roles > "" AndAlso user.Roles.contains("会计") Then