以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教如何实现多列权限、多用户权限编辑?在线等,多谢。 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91124) |
|
-- 作者:ksaa16888 -- 发布时间:2016/9/29 22:21:00 -- 请教如何实现多列权限、多用户权限编辑?在线等,多谢。 一张表中想实现,字段很多,示例如下: 登录用户为叶籽籽时,可以编辑指定的多列,但是其中几列登记完后不允许本人再次编辑,除非经理才可以编辑。 If e.Col.Name = "第一列" Or e.Col.Name = "第二列" or e.Col.Name = "第三列" Then If User.Name <> "叶籽籽" Then e.cancel=True If e.Row.IsNull("第一列","第二列") = False Then If User.Name <> "张经理" Then e.Cancel = True End If End If End If End If 用上述代码实现不了。
|
|
-- 作者:有点蓝 -- 发布时间:2016/9/29 22:28:00 -- Select Case e.Col.Name Case "第一列","第二列","第三列" If e.Row.IsNull(e.Col.Name) Then If User.Name <> "叶籽籽" Then e.Cancel = True Else If User.Name <> "张经理" Then e.Cancel = True End If End Select
|
|
-- 作者:ksaa16888 -- 发布时间:2016/9/29 22:44:00 -- 先感谢。 我试了下,这样子,叶籽籽把第一列、第二列、第三列都编辑完后,均不可以再编辑, 我是想第一列和第二列不允许再次编辑,第三列还是可以的。
|
|
-- 作者:有点蓝 -- 发布时间:2016/9/29 22:52:00 -- 那就去掉第三列咯
|
|
-- 作者:ksaa16888 -- 发布时间:2016/9/29 22:54:00 -- 叶籽籽把第一列、第二列编辑完后这两列不允许再编辑,只有张经理才可以编辑,但第三列可以仍由叶籽籽编辑,该如何实现?多谢。 |
|
-- 作者:有点蓝 -- 发布时间:2016/9/29 22:54:00 -- 看4楼 |
|
-- 作者:ksaa16888 -- 发布时间:2016/9/29 22:57:00 -- 但是第三列只能由叶籽籽编辑,其他人不能,还是需要设置权限? |
|
-- 作者:ksaa16888 -- 发布时间:2016/9/29 23:00:00 -- 相当于第1、2、3列只能由叶籽籽编辑,但是第1、2列的数据一旦录入,只有经理才能编辑,第3列允许继续由叶籽籽编辑。 |
|
-- 作者:有点蓝 -- 发布时间:2016/9/29 23:05:00 -- Select Case e.Col.Name Case "第一列","第二列" If e.Row.IsNull(e.Col.Name) Then If User.Name <> "叶籽籽" Then e.Cancel = True Else If User.Name <> "张经理" Then e.Cancel = True End If Case "第三列" If User.Name <> "叶籽籽" Then e.Cancel = True End Select
|
|
-- 作者:ksaa16888 -- 发布时间:2016/9/29 23:15:00 -- 刚刚也想到用这个编,但怎么老报错end if要与IF匹配,不是每个IF都要对应一个end if的吗? Select Case e.Col.Name Case "第一列","第二列" If e.Row.IsNull(e.Col.Name) Then If User.Name <> "叶籽籽" Then e.Cancel = True Else If User.Name <> "张经理" Then e.Cancel = True End If End If Case "第三列","第四列","第五列" If user.name <> "叶籽籽" Then e.cancel = True End If End Select
|