以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]授权表,对“主窗口”中的副本表“入库订单表”中的列进行授权设置,代码应该怎么改?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=132525)

--  作者:fengwenliuyan
--  发布时间:2019/3/24 0:19:00
--  [求助]授权表,对“主窗口”中的副本表“入库订单表”中的列进行授权设置,代码应该怎么改?
用Table控件模拟关联表的方法,在窗口中的table是副本类型,如:窗口“主窗口”中的副本表“入库订单表”,现希望:
授权表,对“主窗口”中的副本表“入库订单表”中的列进行授权设置,代码应该怎么改?
注:各用户密码都是888


[此贴子已经被作者于2019/4/30 9:58:57编辑过]

--  作者:fengwenliuyan
--  发布时间:2019/3/24 10:09:00
--  
求帮助
--  作者:有点甜
--  发布时间:2019/3/24 12:32:00
--  

1、窗口表的表名,是这样的, 窗口1_table1

 

你设置的时候,把表名写对即可。

 

2、在窗口的afterLoad事件,也复制你【loadusersetting】事件的代码过去执行,即可。

 

3、参考这个设计 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=5&ID=23959&skin=0

 


--  作者:fengwenliuyan
--  发布时间:2019/3/24 13:53:00
--  回复:(有点甜)1、窗口表的表名,是这样的, 窗口1_...
按照您说的,测试,“入库员”登录,密码是888,提示:

图片点击可在新窗口打开查看此主题相关图片如下:wd@85_s}k48$fp5(}~(o5g6.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:$o6zn0u%9j}th$%y@o}5r_8.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2019/4/30 9:59:10编辑过]

--  作者:有点甜
--  发布时间:2019/3/24 14:45: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 = (User.Type <> UserTypeEnum.User )
If User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("授权表").Select("用户名 = \'" & User.Name & "\'" )
        If Tables.contains(dr("表名")) Then
            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
        End If
    Next
End If


--  作者:fengwenliuyan
--  发布时间:2019/3/24 14:55:00
--  回复:(有点甜)改成比如 '创建一个"授权表...
是项目事件和窗口afterload事件都改成这个吗?


--  作者:有点甜
--  发布时间:2019/3/24 15:13:00
--  
以下是引用fengwenliuyan在2019/3/24 14:55:00的发言:
是项目事件和窗口afterload事件都改成这个吗?

 

是的。