以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 权限行不可见 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=176175) |
||||
-- 作者:chk -- 发布时间:2022/4/2 16:42:00 -- 权限行不可见 您好!这个项目的LoadUserSetting事件 If User.Group = "新发总部"Then DataTables("排柜计划").LoadFilter = "" Else DataTables("排柜计划").LoadFilter = "客户负责人 = \'" & User.Name & "\'" End If DataTables("排柜计划").Load() 我能不能把 If User.Group = "新发总部"Then 改为 If User.Group = "everyone"Then, 除了客户负责人用户只能见自己对应的行,其它所有分组的用户都可以见所有行? 谢谢!!
[此贴子已经被作者于2022/4/2 16:42:24编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/2 17:01:00 -- If User.Group <> "新发总部"Then |
||||
-- 作者:chk -- 发布时间:2022/4/7 17:02:00 -- 您好! 我改了后显示的结果不对,限制了的用户怎么还是全部的行都可以见,不知道为什么? If User.Group <> "新发总部"Then
DataTables("生产计划").LoadFilter = "" Else DataTables("生产计划").LoadFilter = "客户负责人 = \'" & User.Name & "\'" End If DataTables("生产计划").Load() If User.Group <> "新发总部"Then DataTables("原辅料仓库出入表").LoadFilter = "" Else DataTables("原辅料仓库出入表").LoadFilter = "经手人= \'" & User.Name & "\'" End If DataTables("原辅料仓库出入表").Load() |
||||
-- 作者:有点蓝 -- 发布时间:2022/4/7 17:05:00 -- 是不是其它地方也有加载数据的代码?或者有使用加载树什么的。 |
||||
-- 作者:chk -- 发布时间:2022/4/7 17:26:00 -- 您好! 刚刚在表属性BeforeLoad加了这个代码,但是结果还是一样,对应经手人还是可以看到其它行。 If User.Group = "经手人" \'如果用户组是雇员 Dim fl As String = "[经手人] = \'" & User.Name & "\'" If e.DataTable.LoadFilter = "" Then e.DataTable.LoadFilter = fl ElseIf e.DataTable.LoadFilter.IndexOf(fl) < 0 Then \'如果没有包括雇员条件 e.DataTable.LoadFilter = e.DataTable.Loadfilter & " And " & fl End If End If 这个表只和汇总表做过关联是子表。
[此贴子已经被作者于2022/4/7 17:32:59编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/7 17:41:00 -- 请上传实例说明 |
||||
-- 作者:chk -- 发布时间:2022/4/8 10:40:00 --
您好! 附件已上传,这个是测试的版本,正在使用的是用SQL数据源的.我用这个测试的项目试过昨天使用的代码也不行,是“库存明细”表,请帮忙看看是什么原因,谢谢!
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/8 10:48:00 --
|
||||
-- 作者:chk -- 发布时间:2022/4/8 11:21:00 -- 您好! 经手人列对应指定用户只可以看到自己的行做到了。但是还有一个条件没有达到,其它用户怎么每行都不可见了,应该是经手人列不是该用户的都可以看到每行。 谢谢,帮忙在看看
|
||||
-- 作者:有点蓝 -- 发布时间:2022/4/8 11:28:00 -- 没看懂,截图说明一下 |