以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 让用户处理不同的列无效 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=151514) |
-- 作者:lal021962 -- 发布时间:2020/6/26 10:48:00 -- 让用户处理不同的列无效 在项目的AfterOpenProject事件中设置代码: Select Case User.Name
但执行无效,主窗口中仍然可见一下两列,请问原因 |
-- 作者:lal021962 -- 发布时间:2020/6/26 11:02:00 -- 以下内容是专门发给有点蓝浏览
[此贴子已经被作者于2021/2/5 21:20:27编辑过]
|
-- 作者:linyunu1 -- 发布时间:2020/6/26 11:27:00 -- 窗口AfterLoad Select Case User.NameCase "叶垚真","徐闻聪" Tables(e.form.name & "_Table1").Cols.Remove("工厂销售总金额","已付工厂款") End Select |
-- 作者:lal021962 -- 发布时间:2020/6/26 16:47:00 -- 那假如是要求用户角色是业务员的时候,无法处理这两列,该如何写代码 |
-- 作者:linyunu -- 发布时间:2020/6/26 17:05:00 -- 无法处理这两列是需要怎样无法处理? If User.Roles = "业务员" Then Tables(e.form.name & "_Table1").Cols.Remove("工厂销售总金额","已付工厂款") End If
|
-- 作者:lal021962 -- 发布时间:2020/6/26 22:08:00 -- 就是需要达成和之前你写的代码一样的效果,只不过把用户名筛选换成角色筛选: Select Case User.Name 以上代码能够达成预期效果。
If User.Roles = "业务员" Then Tables(e.form.name & "_Table1").Cols.Remove("工厂销售总金额","已付工厂款")
End If 以上代码无法达成预期效果
|
-- 作者:lal021962 -- 发布时间:2020/6/26 22:16:00 -- 已经解决,将代码改成如下格式即可: If User.isrole( "业务员" )=true Then Tables(e.form.name & "_Table1").Cols.Remove("工厂销售总金额","已付工厂款")
End If
谢谢帮助
|
-- 作者:linyunu -- 发布时间:2020/6/26 22:18:00 -- If User.IsRole("业务员") Then Tables(e.form.name & "_Table1").Cols.Remove("工厂销售总金额","已付工厂款") End If |