以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于管理员权限 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=125099) |
-- 作者:ygg8310 -- 发布时间:2018/9/19 21:25:00 -- 关于管理员权限 首先我使用的是开发版,明年到期,在使用期间,我发现了一个很纠结的问题,就是关于可视化授权的问题,以前我可以通过可视化授权来实现哪些表不让管理员看见哪些行,就是可以在可视化授权里面限制管理员权限,但是,自从更新到新款,就不行了,请问还有什么办法限制管理员权限吗 |
-- 作者:有点甜 -- 发布时间:2018/9/19 21:41:00 -- 新版旧版,如果代码没有变化,基本都是不会出现你说的问题的。
请加入msgbox,调试看你代码哪里出问题了。
如果自己不会做,具体做个例子发上来测试。 |
-- 作者:ygg8310 -- 发布时间:2018/9/21 14:26:00 -- For Each t As Table In Tables t.Visible = True t.AllowEdit = True For Each c As Col In t.Cols c.Visible = True c.AllowEdit = True Next Next Tables("权限1").Visible = (User.Type <> UserTypeEnum.User ) If User.Type = UserTypeEnum.User Then For Each dr As DataRow In DataTables("权限1").Select("用户名 = \'" & User.Name & "\'" ) If dr.IsNull("列名") Then Tables(dr("表名")).Visible = Not dr("不可见") Tables(dr("表名")).AllowEdit = Not dr("不可编辑") Else Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见") Tables(dr("表名")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑") End If Next End If
|
-- 作者:ygg8310 -- 发布时间:2018/9/21 14:27:00 -- 就这个呀 没任何变化 |
-- 作者:有点甜 -- 发布时间:2018/9/21 15:08:00 -- 试试改成
For Each t As Table In Tables For Each dr As DataRow In DataTables("权限1").Select("用户名 = \'" & User.Name & "\'" ) |