以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 为什么按帮助例子的这个函数运行,报错? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=55271) |
-- 作者:jinxilin -- 发布时间:2014/8/13 15:45:00 -- 为什么按帮助例子的这个函数运行,报错? http://www.foxtable.com/help/index.html?n=1498.htm 这个例子的函数,调用没有反应,百思不得基解, 我试着在命令窗口执行函数,发现报错,说要未声明变量,应该怎么声明一下? 求指教 【出错的函数】: Dim dt As
DataTable =
DataTables("授权") Dim dr As DataRow \'首先判断分组的授权用户是否包括此用户或此用户所属的分组 dr = dt.Find("分组 = \'" & args(0) & "\' And 权限 Is Null" ) If dr Is Nothing Then MessageBox.show("不存在名为""" & args(0) & "分组!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Return False End If If dr.IsNull("用户") = False Then Dim nms() As String = dr("用户").Split(",") For Each nm As String In nms If nm = User.Group OrElse nm = User.Name Then \'如果授权用户包括登录用户所属的分组或其用户名 Return True \'返回True End If Next End If \'然后判断权限的授权用户是否包括此用户或此用户所属的分组 If Args(1) = "" Then Return False End If dr = dt.Find("分组 = \'" & args(0) & "\' And 权限 = \'" & args(1) & "\'") If dr Is Nothing Then MessageBox.show("不存在名为""" & args(1) & "权限!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Return False End If If dr.IsNull("用户") = False Then Dim nms() As String = dr("用户").Split(",") For Each nm As String In nms If nm = User.Group OrElse nm = User.Name Then \'如果授权用户包括登录用户所属的分组或其用户名 Return True \'返回True End If Next End If Return False [此贴子已经被作者于2014-8-13 15:46:18编辑过]
|
-- 作者:Bin -- 发布时间:2014/8/13 15:47:00 -- 命令窗口是不能执行 args 的,这个是内部函数才有的 |
-- 作者:jinxilin -- 发布时间:2014/8/13 15:53:00 -- 那为什么我按例子操作的,调用函数没有反应呢? 我在菜单的 LoadUserSetting 事件里加入代码, 要菜单的功能组【高级管理】按权限隐藏,为什么隐藏不了? 不知道哪里的问题,请赐教 If Functions.Execute("ShouQuan","高级管理","") Then \'当用户没有这个权限,则隐藏此功能菜单 RibbonTabs("高级管理").Visible = True Else RibbonTabs("高级管理").Visible = False End If |
-- 作者:有点甜 -- 发布时间:2014/8/13 16:00:00 -- 单独运行这段代码,看是否报错。如果没有报错,就说明你的内部函数或者数据有问题。
If Functions.Execute("ShouQuan","高级管理","") Then \'当用户没有这个权限,则隐藏此功能菜单
RibbonTabs("高级管理").Visible = True
Else
RibbonTabs("高级管理").Visible = False
End If |