Foxtable(狐表)用户栏目专家坐堂 → [求助]未将对象引用设置到对象的实例


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

主题:[求助]未将对象引用设置到对象的实例

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


加好友 发短信
等级:六尾狐 帖子:1394 积分:10728 威望:0 精华:0 注册:2013/11/8 15:27:00
[求助]未将对象引用设置到对象的实例  发帖心情 Post By:2021/8/4 17:05:00 [显示全部帖子]

错误所在事件:项目,LoadUserSetting
详细错误信息:
未将对象引用设置到对象的实例。

LoadUserSetting中有以下代码,用开发者进没有错误提示,一般用户进提示上面错误,麻烦看下哪里要调整

If User.Type = UserTypeEnum.User Then
    For Each dr1 As DataRow In DataTables("授权表三").DataRows
        Dim nms() As String
        Dim nms1() As String
        If dr1.Isnull("受限角色")=False Then
            nms = dr1("受限角色").Split(",")
        End If
        If dr1.Isnull("非受限角色")=False Then
            nms1 = dr1("非受限角色").Split(",")
        End If
        If dr1("用户名列")=True Then
            For Each nm As String In nms
            For Each nm1 As String In nms1
            If dr1.Isnull("非受限角色")=False And user.roles.contains(nm1) Then
                DataTables(dr1("表名")).LoadFilter = ""
            ElseIf dr1.Isnull("受限角色")=False And user.roles.contains(nm) Then
                DataTables(dr1("表名")).LoadFilter = "" & dr1("列名") & " In ( '" & dr1("列内容").Value.replace(",","','") & "')"
            Else
                DataTables(dr1("表名")).LoadFilter = "" & dr1("列名") & " = '" & User.Name & "'"
            End If
            Next
            Next
        End If
        If dr1("用户名列")=False Then
            For Each nm As String In nms
            For Each nm1 As String In nms1
            If dr1.Isnull("非受限角色")=False And user.roles.contains(nm1) Then
               DataTables(dr1("表名")).LoadFilter = ""
            ElseIf dr1.Isnull("受限角色")=False And user.roles.contains(nm) Then
                DataTables(dr1("表名")).LoadFilter = "" & dr1("列名") & " In ( '" & dr1("列内容").Value.replace(",","','") & "')"
            End If
            Next
            Next
        End If
    Next
End If

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


加好友 发短信
等级:六尾狐 帖子:1394 积分:10728 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2021/8/4 18:53:00 [显示全部帖子]

If User.Type = UserTypeEnum.User Then
    For Each dr1 As DataRow In DataTables("授权表三").DataRows
        Dim nms() As String
        Dim nms1() As String
        If dr1.Isnull("受限角色")=False Then
            nms = dr1("受限角色").Split(",")
        Else
            Continue For
        End If
        If dr1.Isnull("非受限角色")=False Then
            nms1 = dr1("非受限角色").Split(",")
        Else
            Continue For
        End If
        For Each nm As String In nms
        For Each nm1 As String In nms1
        If dr1("用户名列")=True Then
            If dr1.Isnull("非受限角色")=False And User.IsRole(nm1) Then
                DataTables(dr1("表名")).LoadFilter = ""
            ElseIf dr1.Isnull("受限角色")=False And dr1.Isnull("列内容")=False And User.IsRole(nm) Then
                DataTables(dr1("表名")).LoadFilter = "" & dr1("列名") & " In ( '" & dr1("列内容").replace(",","','") & "')"
            Else
                DataTables(dr1("表名")).LoadFilter = "" & dr1("列名") & " = '" & User.Name & "'"
            End If
        End If
        If dr1("用户名列")=False Then
            If dr1.Isnull("非受限角色")=False And User.IsRole(nm1) Then
               DataTables(dr1("表名")).LoadFilter = ""
            ElseIf dr1.Isnull("受限角色")=False And dr1.Isnull("列内容")=False And User.IsRole(nm) Then
                DataTables(dr1("表名")).LoadFilter = "" & dr1("列名") & " In ( '" & dr1("列内容").replace(",","','") & "')"
            End If
        End If
        Next
        Next
    Next
End If

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

当符合标颜色的条件时,还是会加载全部的数据,条件没起作用


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


加好友 发短信
等级:六尾狐 帖子:1394 积分:10728 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2021/8/5 11:24:00 [显示全部帖子]

msgbox(user.Roles)显示是直营财务,没问题

 回到顶部