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


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

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

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106636 积分:542357 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/4 17:15:00 [显示全部帖子]

        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

另外判断是否包含某个角色应该使用User.IsRole:http://www.foxtable.com/webhelp/topics/0609.htm

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106636 积分:542357 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/5 8:48:00 [显示全部帖子]

msgbox(user.Roles) '登录用户角色看看

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106636 积分:542357 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/5 12:06:00 [显示全部帖子]

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

 回到顶部