以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于快速访问兰对用户组可不可用的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=85043)

--  作者:scofields
--  发布时间:2016/5/16 14:50:00
--  关于快速访问兰对用户组可不可用的问题
红袍老师,我想设置菜单栏的项目权限问题,这可怎么设置?如,我想设置其中数据源设置与返回系统设置只对开发者有效,其他的都无效,这怎么处理
图片点击可在新窗口打开查看此主题相关图片如下:设置菜单对谁有用.jpg
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2016/5/16 14:51:00
--  

比如代码

 

QAT.Items("Save").Enabled = False


--  作者:scofields
--  发布时间:2016/5/16 15:11:00
--  回复:(大红袍)比如代码 QAT.Items("Save"...
谢谢红袍老师。这个问题已得到初步解决。我把这段代码放在了LoadUserSettings,但是切换用户的时候,还是不能及时改过来。比如说,当我以销售开票用户组登录的时候,什么返回系统菜单,窗口管理,数据源管理还是灰色不可用状态,这又是怎么回事啊?
If User.group<>"销售开票" Then
QAT.Items("返回系统菜单").Enabled = False
QAT.Items("窗口管理").Enabled = False
QAT.Items("数据源管理").Enabled = False
End If

--  作者:大红袍
--  发布时间:2016/5/16 15:13:00
--  
dim flag = User.group = "销售开票"
QAT.Items("返回系统菜单").Enabled = flag
QAT.Items("窗口管理").Enabled = flag
QAT.Items("数据源管理").Enabled = flag
 

--  作者:scofields
--  发布时间:2016/5/16 15:20:00
--  
为什么要用这个代码呢?那我什么表数据权限加载,是不是也用这个?比如说LoadUsersettings中的以下的if User.Group=......语句
Dim flag = User.group = "销售开票"
QAT.Items("返回系统菜单").Enabled = flag
QAT.Items("窗口管理").Enabled = flag
QAT.Items("数据源管理").Enabled = flag
Tables("JHS").DataTable.Load()
Tables("FAJHB").DataTable.Load()
If User.Group <>"销售开票" AndAlso User.Group <>"发运地磅"  Then
        DataTables("JHS").LoadFilter = "客户名 = \'" & User.Name & "\'"
    DataTables("FAJHB").LoadFilter = "客户名 = \'" & User.Name & "\'"
Else
DataTables("JHS").LoadFilter =""
DataTables("FAJHB").LoadFilter =""
End If
If User.Group <> "发运地磅" Then
Tables("JHS").visible =True
Tables("KH").visible =True
Tables("FAJHB").visible =True
Else
    Tables("JHS").visible =False
    Tables("FAJHB").visible =True
    Tables("KH").visible =False
End If
DataTables("FAJHB").LoadTop = "100 percent"
DataTables("JHS").LoadTop = "100 percent"

--  作者:scofields
--  发布时间:2016/5/16 15:21:00
--  
也会存在切换用户的时候,数据不及时更新的问题。
--  作者:大红袍
--  发布时间:2016/5/16 15:23:00
--  

If User.group<>"销售开票" Then
    QAT.Items("返回系统菜单").Enabled = False
    QAT.Items("窗口管理").Enabled = False
    QAT.Items("数据源管理").Enabled = False
Else
    QAT.Items("返回系统菜单").Enabled = True
    QAT.Items("窗口管理").Enabled = True
    QAT.Items("数据源管理").Enabled = True
End If