以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教录入人员加载权限问题。 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=54164) |
-- 作者:wymoonwalker -- 发布时间:2014/7/23 9:38:00 -- 请教录入人员加载权限问题。 请教大师,设计了一个表试用的时候发现一个问题。当时设计的表登陆用户为个人,且每个人分属不同的组,即每个分组里面只有一个人。所以引用的类似如下代码。个人登陆时只加载当前用户录入的行。
If User.Name = "张经理" Then
现在发现,有一个组里需要两个人同时录入。但不想以分组的名称登陆。想达到个人用户登陆时加载所在组的所有数据,但只能编辑当前用户的数据,组里其他人录入的数据只能查看不能编辑。这样代码如何修改? |
-- 作者:Bin -- 发布时间:2014/7/23 9:41:00 -- If User.Group= "某组" Then DataTables("订单").LoadFilter = "" Else DataTables("订单").LoadFilter = "用户组 = \'" & User.Group & "\'" End If DataTables("订单").Load() 然后在PrepareEdit 事件 |
-- 作者:wymoonwalker -- 发布时间:2014/7/23 10:02:00 -- 代码里的“用户组”必须得在表里有这一列吗?不然是不是不能引用
|
-- 作者:Bin -- 发布时间:2014/7/23 10:05:00 -- 不然就没有依据可判断了啊 |
-- 作者:wymoonwalker -- 发布时间:2014/7/23 10:07:00 -- 我以为在用户管理里面设置好分组就可以了,⊙﹏⊙b汗。试试看 |
-- 作者:wymoonwalker -- 发布时间:2014/7/23 10:35:00 -- 多谢Bin大师!前面的设置好啦。加载已经没问题了。 有一个表问题总是解决不了。表编辑前PrepareEdit中我设置用户只能编辑登陆用户录入的行。用如下代码。 If e.Row("业务员") <> User.Name Then
但是“经理”组设置是加载全部行的,这样没有一条是经理编辑的,经理登陆后就无法点“审批”了。这个如何修改呢 |
-- 作者:Bin -- 发布时间:2014/7/23 10:41:00 -- If e.Row("业务员") <> User.Name andalso User.Name <> "经理" Then e.Cancel = True End If 如果经理是用户组 If e.Row("业务员") <> User.Name andalso User.Group<> "经理" Then
e.Cancel = True End If |
-- 作者:wymoonwalker -- 发布时间:2014/7/23 10:45:00 -- 非常非常感谢! |
-- 作者:wymoonwalker -- 发布时间:2014/7/23 11:01:00 -- 还要请教大师,我要增加一个用户组“管理层”。加载时与组“市场部”一样,加载所有表格。加载代码 If User.Group = "市场部"andalso User.Group = "管理层"Then 这样不对吗?为什么“管理层”用户加载不出来呢?
|
-- 作者:Bin -- 发布时间:2014/7/23 11:02:00 -- If User.Group = "市场部" orelse User.Group = "管理层"Then |