Foxtable(狐表)用户栏目专家坐堂 → 为什么按帮助例子的这个函数运行,报错?


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

主题:为什么按帮助例子的这个函数运行,报错?

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


加好友 发短信
等级:童狐 帖子:202 积分:1639 威望:0 精华:0 注册:2014/6/17 19:26:00
为什么按帮助例子的这个函数运行,报错?  发帖心情 Post By: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




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


[此贴子已经被作者于2014-8-13 15:46:18编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/8/13 15:47:00 [只看该作者]

命令窗口是不能执行 args 的,这个是内部函数才有的

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


加好友 发短信
等级:童狐 帖子:202 积分:1639 威望:0 精华:0 注册:2014/6/17 19:26:00
  发帖心情 Post By:2014/8/13 15:53:00 [只看该作者]

那为什么我按例子操作的,调用函数没有反应呢?

我在菜单的 LoadUserSetting 事件里加入代码,
要菜单的功能组【高级管理】按权限隐藏,为什么隐藏不了?  
不知道哪里的问题,请赐教

If Functions.Execute("ShouQuan","高级管理","")   Then   '当用户没有这个权限,则隐藏此功能菜单
    RibbonTabs("高级管理").Visible = True
Else
    RibbonTabs("高级管理").Visible = False
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/13 16:00:00 [只看该作者]

 单独运行这段代码,看是否报错。如果没有报错,就说明你的内部函数或者数据有问题。

 

If Functions.Execute("ShouQuan","高级管理","")   Then   '当用户没有这个权限,则隐藏此功能菜单
    RibbonTabs("高级管理").Visible = True
Else
    RibbonTabs("高级管理").Visible = False
End If

 回到顶部