以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]请问怎样能实现分权限隐藏列呢? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=60132) |
-- 作者:rophy0952 -- 发布时间:2014/11/18 22:40:00 -- [求助]请问怎样能实现分权限隐藏列呢? 想设定除张三或李四外,不显示表A的B列。 我在afterload的表事件中输入代码,但不起作用,请问哪里出错呢? If _username = "张三" OrElse _username = "李四" Then Tables("表A").Cols("B").Visible = True Else Tables("表A").Cols("B").Visible = False End If |
-- 作者:有点甜 -- 发布时间:2014/11/18 22:41:00 -- 写到afteropenproject事件 |
-- 作者:rophy0952 -- 发布时间:2014/11/18 23:03:00 -- 在Afteropenproject事件中,录入如下代码,然后按照非张三及李四的用户名进入时,“采购报价表”仍显示想要隐藏的列,“采购明细表”已经不显示了,请问是何情况呢? If _Username = "张三" OrElse _Username = "李四" Then Tables("采购报价表").Cols("单价1").Visible = True Tables("采购明细表").Cols("单价1").Visible = True Tables("采购明细表").Cols("金额1").Visible = True Else Tables("采购报价表").Cols("单价1").Visible = False Tables("采购明细表").Cols("单价1").Visible = False Tables("采购明细表").Cols("金额1").Visible = False End If |
-- 作者:有点甜 -- 发布时间:2014/11/18 23:09:00 -- 那你的 _Username 肯定不对。
msgbox(_Username) 看一下 |
-- 作者:rophy0952 -- 发布时间:2014/11/18 23:19:00 -- 看过了,没有问题呢。除了张三和李四,我随便找哪个应该都可以啊,但不知为什么,一个表可以,一个表不可以 [此贴子已经被作者于2014-11-18 23:20:19编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/11/19 9:03:00 -- 以下是引用rophy0952在2014-11-18 23:19:00的发言:
看过了,没有问题呢。除了张三和李四,我随便找哪个应该都可以啊,但不知为什么,一个表可以,一个表不可以 [此贴子已经被作者于2014-11-18 23:20:19编辑过]
肯定有其它事件有类似的代码影响了,你导出全部代码查找一下
Tables("采购报价表").Cols("单价1").Visible = False
|
-- 作者:rophy0952 -- 发布时间:2014/11/19 9:15:00 -- 我刚才找到原因了,但不知如何解决才好呢?应该是因为窗口表控件中“作为副表”的属性设为“true”了,如果改成“false”就可以了。但是改成false以后,窗口afterload的代码(如下),又无法运行了。请问这是怎么回事呢? “Dim rgd As WinForm.RecordGrid = e.Form.Controls("RecordGrid1") rgd.Table = Tables("采购报价信息_采购报价表") \'指定绑定表 rgd.Build()”
|
-- 作者:rophy0952 -- 发布时间:2014/11/19 9:18:00 -- 我将gd.Table = Tables("采购报价信息_采购报价表")改成gd.Table = Tables("采购报价表")了,目前可以用,不知会不会有其它问题出现? |
-- 作者:有点甜 -- 发布时间:2014/11/19 9:40:00 -- 回复楼上,你只是控制了Tables("采购报价表")的显示或隐藏,但没有设置Tables("采购报价信息_采购报价表")这个表的显示和隐藏啊。 |
-- 作者:rophy0952 -- 发布时间:2014/11/19 9:54:00 -- 那该如何处理为好呢? |