以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  权限不起作用  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=150818)

--  作者:nxdx112
--  发布时间:2020/6/8 16:20:00
--  权限不起作用

StartEdit


If e.Row("性别") = "男"  AndAlso User.IsRole("女") Then  
          e.cancel = True
          Messagebox.Show("只有男生宿舍管理员才能修改男生的信息!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
ElseIf e.Row("性别") = "女" AndAlso User.IsRole("男") Then
        e.cancel = True
         Messagebox.Show("只有女生宿舍管理员才能修改女生的信息!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
End If


当给用户给“男”,或“女 ”角色时没问题,为什么当给用户不给任何角色的时候却也能编辑,
[此贴子已经被作者于2020/6/8 16:33:13编辑过]

--  作者:有点蓝
--  发布时间:2020/6/8 16:41:00
--  
If e.Row("性别") = "男"  AndAlso User.IsRole("女") Then  
          e.cancel = True
          Messagebox.Show("只有男生宿舍管理员才能修改男生的信息!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
ElseIf e.Row("性别") = "女" AndAlso User.IsRole("男") Then
        e.cancel = True
         Messagebox.Show("只有女生宿舍管理员才能修改女生的信息!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
elseif User.Roles = "" then
e.cancel = True
End If

--  作者:nxdx112
--  发布时间:2020/6/8 16:52:00
--  
上面的任然不行,用户是自带的,
elseif User.Roles = "" then 
elseif  User.IsRole  = "" then 改为这个又错误

--  作者:有点蓝
--  发布时间:2020/6/8 16:59:00
--  
我测试没有问题,请上传实例说明
--  作者:nxdx112
--  发布时间:2020/6/8 17:09:00
--  
可能我没有表述清楚
就是角色“男”时只能编辑性别为男的行,角色为“女”时只能编辑性别为女的行,没有赋予角色男或女的则不能编辑,因为还有其他不同的角色

--  作者:有点蓝
--  发布时间:2020/6/8 17:23:00
--  
If e.Row("性别") = "男"  AndAlso User.IsRole("男") = false Then  
          e.cancel = True
          Messagebox.Show("只有男生宿舍管理员才能修改男生的信息!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
ElseIf e.Row("性别") = "女" AndAlso User.IsRole("女")= false  Then
        e.cancel = True
         Messagebox.Show("只有女生宿舍管理员才能修改女生的信息!","提示",MessageBoxButtons.OK, MessageBoxIcon.Information)
End If

--  作者:nxdx112
--  发布时间:2020/6/8 17:34:00
--  
Thanks?(?ω?)?