以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  权限设置问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=7353)

--  作者:实话实说
--  发布时间:2010/6/9 22:27:00
--  权限设置问题
如图,王五对表A的第八列不可编辑,但对窗口中绑定的表A第八列仍可编辑
图片点击可在新窗口打开查看此主题相关图片如下:snap1.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-6-9 22:27:31编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/6/9 22:32:00
--  

这是当然的,你要变通一下,在窗口的AfterLoad事件设置代码,根据上图表中的设置,来设置窗口表的可见和编辑权限。


--  作者:实话实说
--  发布时间:2010/6/9 22:45:00
--  
能否就上面的权限表给个代码
--  作者:狐狸爸爸
--  发布时间:2010/6/9 22:54:00
--  

设置在窗口的AfterLoad事件:

 

Dim t As Table = Tables("窗口表名")
If User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("授权表").Select("用户名 = \'" & User.Name & "\' And 表名 = \'表名\'" )
        If dr.IsNull("列名") = False
            Tables(“窗口表名”).Cols(dr("列名")).Visible = Not dr("不可见")
            Tables(“窗口表名”).Cols(dr("列名")).AllowEdit = Not dr("不可编辑")
        End If
    Next
End If


--  作者:实话实说
--  发布时间:2010/6/9 23:07:00
--  
谢谢