以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]用户不同,数据显示不同,应如何编写代码? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=3378) |
-- 作者:jgc1010 -- 发布时间:2009/7/1 12:52:00 -- [求助]用户不同,数据显示不同,应如何编写代码? 这里有14组用户,组名分别为01,02,至14。我的目标是想让01组的用户登录时,只能看到所有表中[qzh]字段=01的数据,即只显示组名与qzh的值相同的数据。而整个程序的表大概有10张,如ajk、tblwjk、zpaj、zpjn、cxaj、cxjn等表。代码应如何编制? |
-- 作者:yangming -- 发布时间:2009/7/1 13:33:00 -- 1.每张表中都加一列:qzh,然后根据不同用户加载不能数据 2.增加几个用户 3.表 DataColChanged 事件中 If e.DataCol.Name = "产品" Then \' If e.DataRow.IsNull("产品") Then \' e.DataRow("业务员") = Nothing \' Else e.DataRow("业务员") = User.Name End If End If 4.在项目事件:BeforeLoadInnerTable If e.DataTableName = "产品" AndAlso e.User.Name <> "开发者" Then e.Filter = "[业务员] = \'" & e.User.Name & "\'" End If [此贴子已经被作者于2009-7-1 13:34:20编辑过]
|
-- 作者:roy78 -- 发布时间:2009/7/1 14:13:00 -- 在beforeloadinnettable事件中设置,以下仅提供思路,代码不全 If e.DataTableName = "表名" AndAlso e.User.Name = "权限组数据" Then e.SelectString = "Select * From [表名] Where [qzh] = End If 新手回贴,有错莫怪... [此贴子已经被作者于2009-7-1 14:14:27编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2009/7/1 14:47:00 -- 如果是内部表,请参考: BeforeLoadInnerTable 如果是外部表,请参考: BeforeLoadOuterTable |
-- 作者:jgc1010 -- 发布时间:2009/7/2 22:26:00 -- 谢谢!我测试一下看看 |