以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- [求助]请帮忙看看加载数据哪里有问题? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=59482)
|
-- 作者:liujywwy
-- 发布时间:2014/11/5 9:42:00
-- [求助]请帮忙看看加载数据哪里有问题?
If User.Name.Trim() = "liujiyong@bdcom.com.cn" Then DataTables("临时版本跟踪表").loadFilter = "状态 = \'Confirming\' or 状态 = \'Bound\' or 状态 = \'Submitted\'" DataTables("临时版本跟踪表").Load() DataTables("需求明细表").LoadFilter = "" Else Select Case user.Group Case "录入" If druser.Isnull("新负责人邮箱") Then DataTables("需求明细表").LoadFilter = "技术支持邮箱 = \'" & User.Name.trim() & "\'" Else DataTables("需求明细表").LoadFilter = "技术支持邮箱 = \'" & User.Name.trim() & "\' or 技术支持邮箱 in (\'" & druser("新负责人邮箱").Trim().Replace(",", "\',\'") & "\') " End If Case "审核" DataTables("需求明细表").LoadFilter = "流程 = \'" & user.Group & "\'" Case "协议一组","协议二组","交换组","R驱动组","S驱动组","EPON组","ONU组","网管组","网络组","路由组","PTN应用组","链路组" DataTables("临时版本跟踪表").LoadFilter = "研发邮箱 like \'%" & User.Name.trim() & "%" Case "测试epon" DataTables("临时版本跟踪表").LoadFilter = "邮件通知 like \'%eponver@bdcom.com.cn%\'" DataTables("临时版本跟踪表").loadFilter = "状态 = \'Confirming\' or 状态 = \'Bound\' or 状态 = \'Submitted\'" DataTables("临时版本跟踪表").Load() Case "测试switch" DataTables("临时版本跟踪表").LoadFilter = "邮件通知 like \'%switchver@bdcom.com.cn%\'" DataTables("临时版本跟踪表").loadFilter = "状态 = \'Confirming\' or 状态 = \'Bound\' or 状态 = \'Submitted\'" DataTables("临时版本跟踪表").Load() Case "测试router" DataTables("临时版本跟踪表").LoadFilter = "邮件通知 like \'%routerver@bdcom.com.cn%\'" DataTables("临时版本跟踪表").loadFilter = "状态 = \'Confirming\' or 状态 = \'Bound\' or 状态 = \'Submitted\'" DataTables("临时版本跟踪表").Load() End Select End If
以 case 匹配的是 测试epon为例。我想要的效果是,邮件通知里面包括eponver@bdcom.com.cn 且状态为confirming或Bound或Submitted的所有行数据。可实际加载不是我想的。
请帮忙看看。
Case "测试epon" DataTables("临时版本跟踪表").LoadFilter = "邮件通知 like \'%eponver@bdcom.com.cn%\'" DataTables("临时版本跟踪表").loadFilter = "状态 = \'Confirming\' or 状态 = \'Bound\' or 状态 = \'Submitted\'" DataTables("临时版本跟踪表").Load()
|
-- 作者:有点甜
-- 发布时间:2014/11/5 9:43:00
--
DataTables("临时版本跟踪表").LoadFilter = "邮件通知 like \'%eponver@bdcom.com.cn%\' And (状态 = \'Confirming\' or 状态 = \'Bound\' or 状态 = \'Submitted\')" DataTables("临时版本跟踪表").Load()
|
-- 作者:liujywwy
-- 发布时间:2014/11/5 9:58:00
--
Case "协议一组","协议二组","交换组","R驱动组","S驱动组","EPON组","ONU组","网管组","网络组","路由组","PTN应用组","链路组" DataTables("临时版本跟踪表").LoadFilter = "研发邮箱 like \'%" & User.Name.trim() & "%"
红色代码哪里有问题?
|
-- 作者:有点甜
-- 发布时间:2014/11/5 10:03:00
--
DataTables("临时版本跟踪表").LoadFilter = "研发邮箱 like \'%" & User.Name.trim() & "%\'"
|
-- 作者:liujywwy
-- 发布时间:2014/11/5 10:38:00
--
Case "协议一组","协议二组","交换组","R驱动组","S驱动组","EPON组","ONU组","网管组","网络组","路由组","PTN应用组","链路组" DataTables("临时版本跟踪表").LoadFilter = "研发邮箱 like \'%" & User.Name.trim() & "%\'"
这段代码实现了每个组员看到各自的数据(只要是研发邮箱包括自己的账号)。
假如组长是A,底下有组员B,C,D。那么B,C,D肯定是只能看到各自的数据。但我想让组长A除了能看到自己的数据,也同时可以看到组员B,C,D的数据,这个如何实现呢。
|
-- 作者:有点甜
-- 发布时间:2014/11/5 10:41:00
--
定义用户角色,组长、组员。然后在下面再加一个角色的判断。
|
-- 作者:liujywwy
-- 发布时间:2014/11/5 10:50:00
--
此主题相关图片如下:组长.png

此主题相关图片如下:组员.png
 组长的角色是审核,组员是没有的,但属于一个组。
|
-- 作者:有点甜
-- 发布时间:2014/11/5 10:54:00
--
[此贴子已经被作者于2014-11-5 10:54:19编辑过]
|
-- 作者:有点甜
-- 发布时间:2014/11/5 10:58:00
--
你循环所有的user,判断哪些用户是该组的,就把它们合并起来
If user.Roles = "审核" Then Dim str As String = "1=2" For Each u As UserInfo In users If u.Group = user.Group Then str &= " or 研发邮箱 like \'%" & User.Name.trim() & "%\'" End If Next DataTables("临时版本跟踪表").LoadFilter = str Else DataTables("临时版本跟踪表").LoadFilter = "研发邮箱 like \'%" & User.Name.trim() & "%\'" End If
|