以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于权限设置问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=140171)

--  作者:shilhoue
--  发布时间:2019/8/30 18:23:00
--  [求助]关于权限设置问题
Select Case User.Name
    Case "报告管理员"
        Forms("启动窗口").Controls("Button1").Enabled = False
        Forms("启动窗口").Controls("Button7").Enabled = False
        Forms("启动窗口").Controls("Button8").Enabled = False
        Forms("启动窗口").Controls("Button12").Enabled = True
        Forms("启动窗口").Controls("Button02").Enabled = True
      Case "业务管理员"
        Forms("启动窗口").Controls("Button1").Enabled = True
        Forms("启动窗口").Controls("Button7").Enabled = True
        Forms("启动窗口").Controls("Button8").Enabled = True
        Forms("启动窗口").Controls("Button12").Enabled = False
        Forms("启动窗口").Controls("Button02").Enabled=False
End  Select
系统内置用户管理设置了报告管理员和业务管理员两个用户,这段代码是想分别登陆后某些相应按钮不可用,把这段代码放在项目的LoadUserSetting和AfterOpenProject事件中均报错,放在项目的Initialize事件却无法实现权限管理功能,所有用户所有操作都可执行,请各位老师看看我错在哪了?该如何改正,谢谢

[此贴子已经被作者于2019/8/30 18:27:28编辑过]

--  作者:有点蓝
--  发布时间:2019/8/30 20:22:00
--  
窗口的权限控制放到窗口的afterload事件
--  作者:shilhoue
--  发布时间:2019/8/31 7:59:00
--  
试过了,也不行,还是所有用户都可操作
--  作者:有点蓝
--  发布时间:2019/8/31 8:21:00
--  
切换用户后,需要关闭所有打开的窗口。然后重新打开需要的窗口
--  作者:shilhoue
--  发布时间:2019/8/31 10:34:00
--  
放在窗口Afterload事件中,本地能实现权限管理,但项目文件拷贝到局域网中的其他电脑就失效了, 是什么原因。因为数据是网络共享的,链接的是网络共享的外部数据源。用户是内置用户,和这个有关系么?


--  作者:有点蓝
--  发布时间:2019/8/31 10:56:00
--  
内置用户自能本机使用,需要使用外部用户表,参考:http://www.foxtable.com/webhelp/topics/2723.htm
--  作者:shilhoue
--  发布时间:2019/8/31 11:14:00
--  
但我的权限设置代码是防止窗口的Afteload事件中的,内置中的用户在其他电脑中也能正常登陆并正确识别,所以按道理来说应该和这个没有关系吧
--  作者:有点蓝
--  发布时间:2019/8/31 11:23:00
--  
如果用户名称是一致的,不可能有这种问题。具体上传实例说明