以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]学习可视化授权的实现,按例操作不行!求请点  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90352)

--  作者:GD007
--  发布时间:2016/9/10 16:09:00
--  [求助]学习可视化授权的实现,按例操作不行!求请点

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


代码:
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("表A").Visible = (User.Type <> UserTypeEnum.User )
If User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("表A").Select("用户名 = \'" & User.Name & "\'" )
        If dr.IsNull("列名") Then
            Tables(dr("表B")).Visible = Not dr("不可见")
            Tables(dr("表B")).AllowEdit = Not dr("不可编辑")
        Else
            Tables(dr("表B")).Cols(dr("列名")).Visible = Not dr("不可见")
            Tables(dr("表B")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑") 
        End If
    Next
End If


--  作者:有点蓝
--  发布时间:2016/9/10 16:21:00
--  
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

--  作者:GD007
--  发布时间:2016/9/10 23:39:00
--  
谢谢,学习了。