以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于使用者权限  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=64984)

--  作者:wymoonwalker
--  发布时间:2015/3/6 14:49:00
--  关于使用者权限
请教。我有一个多人异地共享的数据文件。现在增加一个“过路者”用户名,这个用户对于文件中的每个表都只能浏览不能进行编辑删除等任何操作。是需要在每个表的表属性中写代码,还是有更简单的方法?
--  作者:有点甜
--  发布时间:2015/3/6 14:51:00
--  

afteropenproject事件,加入代码

 

For Each t As Table In Tables
    t.AllowEdit = False
Next


--  作者:wymoonwalker
--  发布时间:2015/3/6 15:45:00
--  

甜老师,我没看懂代码的意思,不过挺好用的。


--  作者:Bin
--  发布时间:2015/3/6 15:47:00
--  
遍历所有表,然后全部设置禁止编辑,这是很基本的代码哦,你需要温习一下基础知识
--  作者:wymoonwalker
--  发布时间:2015/3/6 15:48:00
--  

但是有几个问题,我换了其他用户登陆这个文件,部分表也是锁定状态,怎么办。还有对窗口做的表不能编辑,但是可以新增和删除行,怎么解决

 


--  作者:有点甜
--  发布时间:2015/3/6 15:50:00
--  
以下是引用wymoonwalker在2015/3/6 15:48:00的发言:

但是有几个问题,我换了其他用户登陆这个文件,部分表也是锁定状态,怎么办。还有对窗口做的表不能编辑,但是可以新增和删除行,怎么解决

 

 

1、

 

If User.Name = "游客" Then

    For Each t As Table In Tables
        t.AllowEdit = False
    Next

End If

 

2、在各个窗口的AfterLoad事件加入此代码。


--  作者:Bin
--  发布时间:2015/3/6 15:50:00
--  
在LoadUserSting 事件做对应的权限管理. http://www.foxtable.com/help/topics/0611.htm

只是不能编辑可以利用 PrepareEdit做限制 http://www.foxtable.com/help/topics/0605.htm



--  作者:wymoonwalker
--  发布时间:2015/3/6 16:23:00
--  
非常好用,谢谢!
--  作者:wymoonwalker
--  发布时间:2015/3/9 18:11:00
--  

请问专家,我上述设置在窗口的导航栏页面中里应用,导航栏中只关联了一个表的页面使用正常,“过路者”登陆后显示表显示锁定状态。导航栏中有多个表的页面不能锁定每个表,切换用户重新“过路者”用户登陆后正常了,每个表都已锁定。这是怎么回事?

 


--  作者:有点甜
--  发布时间:2015/3/9 19:21:00
--  

一定要在每个窗口的AfterLoad事件加入下面的代码啊

 

If User.Name = "游客" Then

    For Each t As Table In Tables
        t.AllowEdit = False
    Next

End If