以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]不同用户编辑不同列出现的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=150330)

--  作者:wyb_79
--  发布时间:2020/5/27 11:20:00
--  [求助]不同用户编辑不同列出现的问题
表属性中在PrepareEdit事件中写入如下代码:
Select Case _UserName
    Case "张三","李四"
        Select Case e.Col.Name
            Case "模式","项目名称","货物","转运单号","运输地","运输距离","运输单价","运输费用","运费承担方","是否结款"
                e.Cancel = True
        End Select
End Select

本意是张三和李四不能编辑"模式","项目名称","货物","转运单号","运输地","运输距离","运输单价","运输费用","运费承担方","是否结款"这些列,但是实际效果是其它列在用张三或李四登陆时, 确实起到了限制编辑的效果,但是后插入的"运输地"这一列,所有用户都能编辑。
这段代码在命令窗口中进行执行时,会出现:“col”不是e的成员,这个编译错误。


请问错误出现在哪儿了?

--  作者:有点蓝
--  发布时间:2020/5/27 11:41:00
--  
这种代码只能在事件里执行,不能在命令窗口执行,因为命令窗口没有e参数。
--  作者:wyb_79
--  发布时间:2020/5/27 11:48:00
--  
哦,是这样。

那我这段代码是不是没有问题?那为什么后插入的”运输地“列所有的用户全能编辑呢?

--  作者:有点蓝
--  发布时间:2020/5/27 11:50:00
--  
代码没有问题。确定case里列名是正确的?正确的肯定没有问题