以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 导航栏怎么授权 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=148215) |
-- 作者:爱相随 -- 发布时间:2020/4/2 14:43:00 -- 导航栏怎么授权 老师,我有一导航窗口,通过导航窗口的每一个节点打开切换各个表,现在需要授权给不同的人,让不同的人打开导航栏看到的是不一样的,打开后看到的表也不一样。比如导航栏有工程板块,有财务板块,有销售板块。比如工程板块的人打开项目后可能看不到财务板块的某些节点,也就打不开相应的表。 无论是用“让不同用户处理不同的表”
例如在项目事件AfteOpenProject事件中设置代码: Select
Case User.Name 还是用“可视化授权的实现” Tables("授权表").Visible =
(User.Type <> UserTypeEnum.User ) 无论前面怎么设计,在导航窗口代码下各节点都不适用。进去后所有人的看到表的权限还是一样的。 Select Case e.Node.Name Case "债务汇总表"(要使此节点张三看不见,张三也就没法打开这个表,怎么加入限制代码??或者有其他处理方式?) MainTable = Tables("zwhzb") Case "新增协议明细表" MainTable = Tables("xzxymxb") Case "新增放款明细表" MainTable = Tables("xzfkmxb") Case "还本明细表"(要使此节点李四看不见,李四也就没法开打这个表,怎么加入限制代码??或者有其他处理方式?) MainTable = Tables("hbmxb") Case "利息明细表" MainTable = Tables("lxmxb") Case "工程款明细表" MainTable = Tables("gckmx") Case "工程款支付明细表" MainTable = Tables("gckzfmxb") Case "还本付息计划表" MainTable = Tables("hbfxjhb") Case "债务台账汇总表(1级)" MainTable = Tables("zwtzhzb3") Case "债务台账汇总表(2级)" MainTable = Tables("zwtzhzb2") Case "债务台账汇总表(3级)" MainTable = Tables("zwtzhzb1") Case "年度还本付息计划表" MainTable = Tables("ndhbfxjhb") End Select 请问一下在导航窗口怎么授权呢?? [此贴子已经被作者于2020/4/2 15:17:56编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/4/2 16:15:00 -- 方法1、在导航窗口afterload,遍历所有导航栏然后到权限表查询有没有权限,如果没有就隐藏这个导航栏 2、点击的时候再到权限表查询有没有权限 Select Case e.Node.Name Case "债务汇总表"(要使此节点张三看不见,张三也就没法打开这个表,怎么加入限制代码??或者有其他处理方式?) if DataTables("授权表").Find("用户名 = \'" & User.Name & "\' and 表名 =\'债务汇总表\' and 不可见=false" ) isnot nothing then MainTable = Tables("zwhzb") else msgbox(没有权限) end if Case "新增协议明细表" |