Foxtable(狐表)用户栏目专家坐堂 → 导航栏NavBar权限控制,部分 用户组 不能看不见部分栏目;


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

主题:导航栏NavBar权限控制,部分 用户组 不能看不见部分栏目;

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


加好友 发短信
等级:幼狐 帖子:144 积分:1588 威望:0 精华:0 注册:2019/1/12 17:30:00
导航栏NavBar权限控制,部分 用户组 不能看不见部分栏目;  发帖心情 Post By:2020/4/9 11:57:00 [只看该作者]


有一个全局变量,_UserGroup,可以正常使用。

但在导航栏NavBar中不能实现权限控制。部分 用户组  不能看不见部分栏目;

我在导航窗口的  窗口事件 Afterload  中 和  项目的全局事件的  Afterload  中 ,都加入的以下代码:

Dim Bar01 As WinForm.NavBar
    Select Case  _UserGroup
    Case "工程管理组","工程管理员组","无线监理组","建设管理员组"
Bar01 = e.Form.Controls("NavBarleft")
Bar01.NavPages(2).Visible = False
Bar01.NavPages(1).Visible = False
End Select

不能实现隐藏1个,2个栏目;如下图红圈中的栏目
请高手帮忙



图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200409133325.png
图片点击可在新窗口打开查看




[此贴子已经被作者于2020/4/11 17:18:05编辑过]

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/9 12:04:00 [只看该作者]

隐藏1个栏目指什么?截图说明

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


加好友 发短信
等级:幼狐 帖子:144 积分:1588 威望:0 精华:0 注册:2019/1/12 17:30:00
  发帖心情 Post By:2020/4/9 13:36:00 [只看该作者]

图片已加到问题中,请各位老师指导。。

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/9 14:03:00 [只看该作者]

这个用法我测试没有问题呀

Bar01 = e.Form.Controls("NavBarleft")
Bar01.NavPages(2).Visible = False
Bar01.NavPages(1).Visible = False

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


加好友 发短信
等级:幼狐 帖子:144 积分:1588 威望:0 精华:0 注册:2019/1/12 17:30:00
  发帖心情 Post By:2020/4/11 17:20:00 [只看该作者]

如果不加红色的判断用户组,代码能实现隐藏部分红圈中的栏目,但加入用户组判断,就无效了。
哪位老师能解释解释呀??

Dim Bar01 As WinForm.NavBar
    Select Case  _UserGroup
    Case "工程管理组","工程管理员组","无线监理组","建设管理员组"
Bar01 = e.Form.Controls("NavBarleft")
Bar01.NavPages(2).Visible = False
Bar01.NavPages(1).Visible = False
End Select

或者

If  _UserGroup = "工程管理组"  Then
Dim Bar01 As WinForm.NavBar
Bar01 = e.Form.Controls("NavBarleft")
Bar01.NavPages(1).Visible = False
Bar01.NavPages(2).Visible = False
End If

都是不能实现功能。。
[此贴子已经被作者于2020/4/11 17:22:11编辑过]

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/11 17:39:00 [只看该作者]

msgbox(_UserGroup 
If  _UserGroup = "工程管理组"  Then
msgbox(“能不能弹出?”)
Dim Bar01 As WinForm.NavBar
Bar01 = e.Form.Controls("NavBarleft")
Bar01.NavPages(1).Visible = False
Bar01.NavPages(2).Visible = False
msgbox(Bar01.NavPages(2).Visible
End If

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


加好友 发短信
等级:幼狐 帖子:144 积分:1588 威望:0 精华:0 注册:2019/1/12 17:30:00
  发帖心情 Post By:2020/4/11 18:34:00 [只看该作者]

只弹出了 第一个窗口  “系统管理组”  
没有弹出 窗口 “能不能弹出?” 
还是用户管理组的问题。


但是我用"工程管理组"   用户登录系统进去后,点击修改密码,然后就能读出  这个用户所属的  “用户组”——  工程管理组
导航中的其他表格,就能够读出工程管理组,对该 工程管理组 的权限  能正确使用。。针对表格,不针对窗口,从未对窗口有什么控制

可是在 左边 导航窗口  感觉没有读出  工程管理组 的信息来。

老师有没有远程协助呀? 付费解决也可以。因为这个问题,牵动了后面如何增加功能模块的问题。。

是不是对于  窗口  还需要单独 用代码  读出 用户组信息来?? 



图片点击可在新窗口打开查看此主题相关图片如下:22222.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/4/13 12:55:13编辑过]

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/12 21:14:00 [只看该作者]

开发者密码?
[此贴子已经被作者于2020/4/12 21:14:17编辑过]

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


加好友 发短信
等级:幼狐 帖子:144 积分:1588 威望:0 精华:0 注册:2019/1/12 17:30:00
  发帖心情 Post By:2020/4/12 22:09:00 [只看该作者]


另:user 表中有  工程管理组 的账号和密码。随便可以用一个测试。
谢谢老师。
应该是 窗口 没有判断权限。不知道窗口如何判断权限。

如果能qq远程操作就更好沟通。
[此贴子已经被作者于2020/4/13 12:54:47编辑过]

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/12 23:22:00 [只看该作者]

1、首先左导航自动打开设置为false

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
2、其次去掉LoadUserSetting事件代码,把打开导航窗口的代码放到afteropenproject。
自定义登录,这个事件是没有用的,由于这个事件早于afteropenproject事件执行,所以还没有登录窗口已经打开了,因此窗口权限无法设置,因为用户组还没有值。
由于切换用户也是使用的同一个登录窗口,所以建议把权限设置的代码放到登录窗口的去掉按钮中。而不是放到afteropenproject事件


 回到顶部
总数 11 1 2 下一页