以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 权限控制 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=170463) |
-- 作者:透明人生 -- 发布时间:2021/7/27 21:00:00 -- 权限控制 下面这个代码要怎么改 DataTables(drr("表名")).LoadFilter = "Tables(drr(\'表名\')).Cols(drr(\'列名\'))= \'" & _UserName & "\'"
[此贴子已经被作者于2021/7/27 21:01:02编辑过]
|
-- 作者:有点蓝 -- 发布时间:2021/7/27 21:02:00 -- DataTables(drr("表名")).LoadFilter = drr("菜单名") & "= \'" & _UserName & "\'" |
-- 作者:透明人生 -- 发布时间:2021/7/27 22:44:00 -- 没起作用 |
-- 作者:有点蓝 -- 发布时间:2021/7/27 22:48:00 -- http://www.foxtable.com/webhelp/topics/1928.htm msgbox(drr("菜单名") & "= \'" & _UserName & "\'" )
|
-- 作者:透明人生 -- 发布时间:2021/7/27 23:31:00 -- 也不提示 |
-- 作者:透明人生 -- 发布时间:2021/7/27 23:59:00 -- Tables("权限管理").Visible = (User.Type <> UserTypeEnum.User ) If User.Type = UserTypeEnum.User Then For Each drr As DataRow In DataTables("权限管理").Select("分组 = \'" & _UserGroup & "\'" ) If drr.IsNull("列名") Then Tables(drr("表名")).Visible = Not drr("不可见") Tables(drr("表名")).AllowEdit = Not drr("不可编辑") Else Tables(drr("表名")).Cols(drr("列名")).Visible = Not drr("不可见") Tables(drr("表名")).Cols(drr("列名")).AllowEdit = Not drr("不可编辑") End If If drr.IsNull("条件加载") Then If _UserGroup = drr("分组") DataTables(drr("表名")).LoadFilter = drr("条件加载") & "= \'" & _UserName & "\'" Else DataTables(drr("加载表名")).LoadFilter = "" End If End If DataTables(drr("表名")).Load() Next End If Tables("权限管理").Visible = (User.Type <> UserTypeEnum.User ) If User.Type = UserTypeEnum.User Then For Each drr As DataRow In DataTables("权限管理").Select("用户名 = \'" & _UserName & "\'" ) If drr.IsNull("列名") Then Tables(drr("表名")).Visible = Not drr("不可见") Tables(drr("表名")).AllowEdit = Not drr("不可编辑") Else Tables(drr("表名")).Cols(drr("列名")).Visible = Not drr("不可见") Tables(drr("表名")).Cols(drr("列名")).AllowEdit = Not drr("不可编辑") End If If drr.IsNull("条件加载") Then If _UserName = drr("用户名") \'加不加都无效 DataTables(drr("表名")).LoadFilter = drr("条件加载") & "= \'" & _UserName & "\'" Else DataTables(drr("加载表名")).LoadFilter = "" End If End If DataTables(drr("表名")).Load() Next End If [此贴子已经被作者于2021/7/28 0:15:44编辑过]
|
-- 作者:有点蓝 -- 发布时间:2021/7/28 8:32:00 -- Tables("权限管理").Visible = (User.Type <> UserTypeEnum.User ) If User.Type = UserTypeEnum.User Then msgbox("_UserGroup=" & _UserGroup) For Each drr As DataRow In DataTables("权限管理").Select("分组 = \'" & _UserGroup & "\'" ) If drr.IsNull("列名") Then Tables(drr("表名")).Visible = Not drr("不可见") Tables(drr("表名")).AllowEdit = Not drr("不可编辑") Else Tables(drr("表名")).Cols(drr("列名")).Visible = Not drr("不可见") Tables(drr("表名")).Cols(drr("列名")).AllowEdit = Not drr("不可编辑") End If msgbox("条件加载=" & drr("条件加载")) If drr.IsNull("条件加载") Then msgbox(2) If _UserGroup = drr("分组") msgbox(drr("条件加载") & "= \'" & _UserName & "\'") DataTables(drr("表名")).LoadFilter = drr("条件加载") & "= \'" & _UserName & "\'" Else DataTables(drr("加载表名")).LoadFilter = "" End If End If DataTables(drr("表名")).Load() Next End If
|
-- 作者:透明人生 -- 发布时间:2021/7/28 10:15:00 -- 提示:_urseGroup = 管理员 ,就是登录的用户名 条件加载 = 条件加载的列名,按提示好像是对,运行后,全是空的内容。 只提示两个信息。
[此贴子已经被作者于2021/7/28 10:17:01编辑过]
|
-- 作者:有点蓝 -- 发布时间:2021/7/28 10:22:00 -- 请上传实例测试 |
-- 作者:透明人生 -- 发布时间:2021/7/28 11:08:00 -- msgbox("条件加载=" & drr("条件加载")) \'提示:显示列名正常 msgbox( drr("条件加载") & "= \'" & _UserName & "\'") \' 列名:“drr("条件加载") ”没显示,后面的用户显示正常( =\'XX\')
|