Foxtable(狐表)用户栏目专家坐堂 → 关于权限问题的咨询~~


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

主题:关于权限问题的咨询~~

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


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

以下是引用wealthwind在2014-5-12 21:51:00的发言:
现在有可能出现,用户名,用几个角色~~

 

用几个角色,改权限控制的代码。

 

比如 A,有三个角色 xyz

 

代码里面,如果有x角色,就允许做;如果有y角色,就允许做;如果是z角色,就允许做;

 

if user.roles like "*x*" then

 

end if

if user.roles like "*y*" then

 

end if

if user.roles like "*z*" then

 

end if

 

 用全局变量就可以这样写

 

a = "x"

b = "y"

c = "z"

 

if user.roles like "*" & a & "*" then

 

end if

if user.roles like "*" & b & "*" then

 

end if 

if user.roles like "*" & c & "*" then

 

end if

 

[此贴子已经被作者于2014-5-12 21:59:55编辑过]

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


加好友 发短信
等级:三尾狐 帖子:660 积分:3965 威望:0 精华:0 注册:2014/3/16 20:34:00
  发帖心情 Post By:2014/5/12 22:05:00 [只看该作者]

那我还想问问,如果用授权表控制,表结构是这样编写吗??
图片点击可在新窗口打开查看此主题相关图片如下:360截图20140512220410859.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:三尾狐 帖子:660 积分:3965 威望:0 精华:0 注册:2014/3/16 20:34:00
  发帖心情 Post By:2014/5/12 22:06:00 [只看该作者]

另外如果用授权表,是不是,窗口中的这些代码就可以不要了~~??

 

For Each s As String In "Button1|Button3|Button4|Button6|Button7|Button8|Button9|Button10|Button11|DateTimePicker1|DateTimePicker2|DateTimePicker3|TextBox2|TextBox4|TextBox5|TextBox6|GroupBox5|GroupBox6|GroupBox7|TextBox3|DateTimePicker4|Button01|Button02|GroupBox2".Split("|")
    If Tables("个案申请").current IsNot Nothing Then
e.Form.Controls(s).Enabled = Tables("个案申请").current.IsNull("审核")
End If
Next
For Each s As String In "Button1|Button3|Button4|TextBox4".Split("|")
    e.Form.Controls(s).Enabled = (User.Roles = "区域主管")
Next
For Each s As String In "Button6|Button7|DateTimePicker2|GroupBox5|TextBox5".Split("|")
    e.Form.Controls(s).Enabled = (User.roles = "个案拆分")
Next
For Each s As String In "Button8|Button9|DateTimePicker3|GroupBox6|TextBox6".Split("|")
    e.Form.Controls(s).Enabled = (User.Roles = "行销部主管")
Next
For Each s As String In "Button10|Button11|DateTimePicker1|GroupBox7|TextBox2".Split("|")
    e.Form.Controls(s).Enabled = (User.Roles = "行销部经理")
Next
For Each s As String In "DateTimePicker4|Button01|Button02|GroupBox2|TextBox3".Split("|")
    e.Form.Controls(s).Enabled = (User.Roles = "Boss")

 

 


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


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

 回复23楼,不是不要了。而是用代码、用变量去代替。

 

 用授权表,只是不让代码写死,可以灵活变换。


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


加好友 发短信
等级:三尾狐 帖子:660 积分:3965 威望:0 精华:0 注册:2014/3/16 20:34:00
  发帖心情 Post By:2014/5/12 22:11:00 [只看该作者]

For Each s As String In "ComboBox1|TextBox4|Button3|Button1|Button4".Split("|")
    e.Form.Controls(s).Enabled = (User.roles = "日常事务")

 

上面这段代码是这样改吗??

For Each s As String In "ComboBox1|TextBox4|Button3|Button1|Button4".Split("|")
   
if user.roles like "*个案拆分*" then

e.Form.Controls(s).Enabled

end if

if user.roles like "*日常管理*" then

e.Form.Controls(s).Enabled

end if

if user.roles like "*产品管理*" then

e.Form.Controls(s).Enabled

end if


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


加好友 发短信
等级:三尾狐 帖子:660 积分:3965 威望:0 精华:0 注册:2014/3/16 20:34:00
  发帖心情 Post By:2014/5/12 22:12:00 [只看该作者]

也就是窗口代码还是需要的,只是另外用授权表可以灵活控制,对吧???另外授权表的格式对吗??

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


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

呃,错了图片点击可在新窗口打开查看

 

For Each s As String In "ComboBox1|TextBox4|Button3|Button1|Button4".Split("|")
    e.Form.Controls(s).Enabled = (User.roles = "日常事务")

 

改成

 

For Each s As String In "ComboBox1|TextBox4|Button3|Button1|Button4".Split("|")
    e.Form.Controls(s).Enabled = (ser.roles like "*日常事务*")


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


加好友 发短信
等级:三尾狐 帖子:660 积分:3965 威望:0 精华:0 注册:2014/3/16 20:34:00
  发帖心情 Post By:2014/5/12 22:26:00 [只看该作者]

是全局代码,还是全局变量??

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


加好友 发短信
等级:三尾狐 帖子:660 积分:3965 威望:0 精华:0 注册:2014/3/16 20:34:00
  发帖心情 Post By:2014/5/12 22:26:00 [只看该作者]

全局变量找不到可以录入的地方额·~~全局代码就可以。。。。。。。。

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


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

以下是引用wealthwind在2014-5-12 22:26:00的发言:
全局变量找不到可以录入的地方额·~~全局代码就可以。。。。。。。。

 

在全局代码

 

参考

 

http://www.foxtable.com/help/topics/1842.htm

 

http://www.foxtable.com/help/topics/0325.htm

 


 回到顶部
总数 45 上一页 1 2 3 4 5 下一页