Foxtable(狐表)用户栏目专家坐堂 → 用了可视化授权,又用了自定义用户与权限管理,可是可视化授权失效了,不知道改怎么改


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

主题:用了可视化授权,又用了自定义用户与权限管理,可是可视化授权失效了,不知道改怎么改

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/13 22:42:00 [显示全部帖子]

For Each t As Table In Tables
    t.Visible = True
    t.AllowEdit = True
    For Each c As Col In t.Cols
        c.Visible = True
        c.AllowEdit = True
    Next
Next
Tables("授权表").Visible = (_UserGroup <> "管理员分组")
If _UserGroup <> "管理员分组" Then
    For Each dr As DataRow In DataTables("授权表").Select("分组名 = '" & _UserGroup & "'" )
        If dr.IsNull("列名") Then
            Tables(dr("表名")).Visible = Not dr("不可见")
            Tables(dr("表名")).AllowEdit = Not dr("不可编辑")
        Else
            Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见")
            Tables(dr("表名")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑")
        End If
    Next
end if

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/14 9:58:00 [显示全部帖子]

直接写

 

r Each t As Table In Tables

    t.Visible = True
    t.AllowEdit = True
    For Each c As Col In t.Cols
        c.Visible = True
        c.AllowEdit = True
    Next
Next
 
    For Each dr As DataRow In DataTables("用户授权表").Select("姓名 = '" & _UserName & "'" )
MessageBox.Show("1")
        If dr.IsNull("受限列的名称") Then
            Tables(dr("受限表的名称")).Visible = Not dr("不可见")
            Tables(dr("受限表的名称")).AllowEdit = Not dr("不可编辑")
        Else
            Tables(dr("受限表的名称")).Cols(dr("受限列的名称")).Visible = Not dr("不可见")
            Tables(dr("受限表的名称")).Cols(dr("受限列的名称")).AllowEdit = Not dr("不可编辑") 
        End If
    Next
 

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/14 11:43:00 [显示全部帖子]

For Each t As Table In Tables
    t.Visible = False
    t.AllowEdit = False
    For Each c As Col In t.Cols
        c.Visible = False
        c.AllowEdit = False
    Next
Next
For Each dr As DataRow In DataTables("用户授权表").Select("姓名 = '" & _UserName & "'" )
    If dr.IsNull("受限列的名称") Then
        Tables(dr("受限表的名称")).Visible = dr("可见")
        Tables(dr("受限表的名称")).AllowEdit = dr("可编辑")
    Else
        Tables(dr("受限表的名称")).Cols(dr("受限列的名称")).Visible = dr("可见")
        Tables(dr("受限表的名称")).Cols(dr("受限列的名称")).AllowEdit = dr("可编辑")
    End If
Next

 回到顶部