以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关联表显示 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=133208) |
-- 作者:13775189031 -- 发布时间:2019/4/9 17:07:00 -- 关联表显示 父表 A,子表B 已经在授权表中设置了显示权限,账户1打开项目后不可见子表B中的列a、b 但在父表A下显示的关联表仍然显示子表B中的列a、b 如何处理?
|
-- 作者:有点甜 -- 发布时间:2019/4/9 19:08:00 -- 你对关联表也要设置。管理表的表名是 【表A.表B】 |
-- 作者:13775189031 -- 发布时间:2019/4/10 9:44:00 -- 明白了,谢谢! |
-- 作者:13775189031 -- 发布时间:2019/4/10 10:09:00 -- 另外,我在 tables("表A.表B").Visible = false,打开项目后在表A下方不显示关联表 开发者的账号显示没问题,但用其他账号打开项目后,下方还是会显示关联表,怎么处理?
|
-- 作者:有点甜 -- 发布时间:2019/4/10 10:58:00 -- 1、在代码后面加入msgbox,看是否执行了
tables("表A.表B").Visible = false msgbox(1)
2、你其它地方是不是还写有显示的代码?比如loadusersetting、窗口afterload事件等。 |
-- 作者:13775189031 -- 发布时间:2019/4/24 8:23:00 -- 1.tables("表A.表B").Visible = false msgbox(1) 代码执行了,显示 生产管理系统.project 1 |
-- 作者:13775189031 -- 发布时间:2019/4/24 8:25:00 -- loadusersetting里只有以下两段代码 Select Case user.group Case "营销员" DataTables("合同台账").LoadFilter = "合同承办人或签约人 = \'" & User.Name & "\'" Case Else DataTables("合同台账").LoadFilter = "" End Select DataTables("合同台账").Load() For Each t As Table In Tables t.Visible = True t.AllowEdit = True For Each c As Col In t.Cols c.Visible = True c.AllowEdit = True Next Next Tables("授权表").Visible = (User.Type <> UserTypeEnum.User ) If User.Type = UserTypeEnum.User Then For Each dr As DataRow In DataTables("授权表").Select("用户名 = \'" & User.Name & "\'" ) If dr.IsNull("列名") Then Tables(dr("表名")).Visible = Not dr("不可见") Tables(dr("表名")).AllowEdit = Not dr("不可编辑") Else Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见") Tables(dr("表名")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑") End If Next End If
|
-- 作者:有点甜 -- 发布时间:2019/4/24 8:47:00 -- 在你loadusersetting事件最后,写代码,如
tables("表A.表B").Visible = false |
-- 作者:13775189031 -- 发布时间:2019/4/24 10:37:00 -- 把afteropenproject里的删掉,写到 loadusersetting里?
|
-- 作者:有点甜 -- 发布时间:2019/4/24 12:21:00 -- 以下是引用13775189031在2019/4/24 10:37:00的发言:
把afteropenproject里的删掉,写到 loadusersetting里?
两个地方都写后测试。 |