以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]不同用户切换“导航”管理窗口权限  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=16221)

--  作者:云淡风轻
--  发布时间:2012/2/6 12:58:00
--  [求助]不同用户切换“导航”管理窗口权限

比如我希望除管理者以外的用户能看到“导航”管理窗口,而管理者看不到“导航”管理窗口,也就是希望管理员的界面去掉“导航”管理菜单。


关闭自动打开属性并在AfterOpenProject中设置了如下代码:

If User.Name <> "管理员" Then
    Forms("菜单").Open()
End If

用管理员登陆,管理窗口还是自动打开的,
同户名经测试是“管理员”

MessageBox.Show(User.Name)

If User.Name <> "管理员" Then
       Forms("菜单").Open()
End If

但是什么原因呢?


--  作者:blackzhu
--  发布时间:2012/2/6 13:17:00
--  
 我测试没有问题呀
--  作者:狐狸爸爸
--  发布时间:2012/2/6 13:18:00
--  
有一种可能,你可能将这个窗口的自动打开属性设置成True了。
--  作者:狐狸爸爸
--  发布时间:2012/2/6 13:19:00
--  

否则一定有效:

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目272.table


--  作者:云淡风轻
--  发布时间:2012/2/6 13:23:00
--  
我没有设置成TURE,我怀疑是不是在其他事件中有冲突比如AfterLoad中,但我注释掉里面的代码,还是一样的,不知是不是事件冲突? 我的真的不行,这个东西怎么这么麻烦,东边好了西边出问题,西边好了东边出问题。
[此贴子已经被作者于2012-2-6 13:47:03编辑过]

--  作者:云淡风轻
--  发布时间:2012/2/6 13:27:00
--  
用里面的切换用户还是不行的,你的要重新打开项目才行的。
--  作者:狐狸爸爸
--  发布时间:2012/2/6 17:19:00
--  

如果要用户切换有效,在LoadUserSetting事件设置代码:

 

If User.Name <> "管理员" Then
    Forms("窗口1").Open()
Else
    Forms("窗口1").Close()
End If

 

 

 

 


--  作者:云淡风轻
--  发布时间:2012/2/7 13:01:00
--  

问题终于找到,原来菜单设计中的主菜单事件中的系统事件的Load中也设置了open,所以无论哪个用户登陆都open了。

经验:1、交接工作没深入细致的做好;

        2、FOXTABLE事件功能多有重叠,一处设置另一处也有此功能,纠错困难。

[此贴子已经被作者于2012-2-7 13:02:08编辑过]