Foxtable(狐表)用户栏目专家坐堂 → 请教:关于按授权表显示navbar页面和topicbar页面问题


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

主题:请教:关于按授权表显示navbar页面和topicbar页面问题

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


加好友 发短信
等级:婴狐 帖子:20 积分:509 威望:0 精华:0 注册:2011/4/19 15:47:00
请教:关于按授权表显示navbar页面和topicbar页面问题  发帖心情 Post By:2022/9/13 9:52:00 [只看该作者]

窗口根据授权表设置代码,总提示
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:窗口,导航测试,AfterLoad
详细错误信息:
未将对象引用设置到对象的实例。
  请教代码如何修改?
[此贴子已经被作者于2022/9/13 9:53:18编辑过]

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/13 9:53:00 [只看该作者]

调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm,看哪一句代码出错

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


加好友 发短信
等级:婴狐 帖子:20 积分:509 威望:0 精华:0 注册:2011/4/19 15:47:00
  发帖心情 Post By:2022/9/13 10:19:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip

测试时:
For Each page As WinForm.NavPage In nv.NavPages 
    For Each tp As WinForm.TopicBar In page.Children 
        For Each pg As WinForm.TopicPage In e.Form.Controls(tp.Name).Pages 
            For Each tl As WinForm.TopicLink In pg.Links 
                pg.Visible = False
                tl.Visible = False
                Dim Filter As String = "用户 like '%" & User.Name & "%' "
                For Each s As String In User.Roles.split(",")
                    Filter = Filter & " or  用户 like '%" & s & "%'"
                Next
                Filter = "(" & Filter & ")"
                
                For Each dr As DataRow In DataTables("导航授权").SQLSelect( Filter) 
                    If dr.IsNull("任务栏页面") = False and dr.IsNull("任务栏") = False Then
'                        msgbox(dr("任务栏"))
'                        msgbox(dr("任务栏页面"))
                        tp.Pages(dr("任务栏")).Visible = True 
                        pg.Links(dr("任务栏页面")).Visible = True 
                    Else 
                        If dr.IsNull("任务栏") = False Then
                               msgbox(dr("任务栏"))
                            tp.Pages(dr("任务栏")).Visible = True 
                        End If 
                    End If 
                Next 
            Next 
        Next 
    Next
Next
第一次可以显示任务栏名称和任务栏页面名称一次,接着就显示“未设置对象变量或 With 块变量。”不知道怎么修改?

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/13 10:41:00 [只看该作者]

这个应该是授权表里维护的任务栏名称和页面名称有误,任务栏控件里不存在这个名称的任务栏或者页面名称。看弹出哪个任务栏和页面名称后出错?

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/13 10:58:00 [只看该作者]

这个循环处理的逻辑很有问题。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip



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


加好友 发短信
等级:婴狐 帖子:20 积分:509 威望:0 精华:0 注册:2011/4/19 15:47:00
  发帖心情 Post By:2022/9/13 11:43:00 [只看该作者]

谢谢大神

 回到顶部