以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]请教设了编辑权限,但却可以在窗口中编辑?请问是什么原因?如何解决?多谢。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91512)

--  作者:ksaa16888
--  发布时间:2016/10/12 14:17:00
--  [求助]请教设了编辑权限,但却可以在窗口中编辑?请问是什么原因?如何解决?多谢。
startedit:
Select Case e.Col.name
    Case "编辑日志"
        If user.name<>"管理员" Then
            e.cancel=True
        End If
End Select

编辑日志字段是备注型,直接双击字段是没办法编辑,但如果在上方菜单:日常工作——窗口——列窗口 中打勾打开后,就可以编辑了。请问是什么情况?哪里设置不对?

--  作者:有点蓝
--  发布时间:2016/10/12 15:09:00
--  
这个代码控制不了列窗口

1、设为锁定

2、删除或者隐藏打开列窗口菜单

--  作者:ksaa16888
--  发布时间:2016/10/12 21:50:00
--  
有没有在哪个事件中可以使用权限进行锁定?这个备注字段是用来记录操作日志的,我希望可以由管理员定期清除,否则数据量太大了,直接用列属性锁定的话,这个备注字段值谁都删除不了。
删除和隐藏是在哪里操作的?我是直接在右侧列窗口中进行,但还是一样可以重新打开。


--  作者:有点蓝
--  发布时间:2016/10/12 22:13:00
--  
Select Case e.Col.name
    Case "编辑日志"
        If user.name<>"管理员" Then
            e.cancel=True
            e.Col.AllowEdit = False
        Else
            e.Col.AllowEdit = True
        End If
End Select

--  作者:有点蓝
--  发布时间:2016/10/12 22:14:00
--  
导入系统菜单,在上面修改
--  作者:ksaa16888
--  发布时间:2016/10/13 13:45:00
--  
试了这段代码:
Select Case e.Col.name
    Case "编辑日志"
        If user.name<>"管理员" Then
            e.cancel=True
            e.Col.AllowEdit = False
        Else
            e.Col.AllowEdit = True
        End If
End Select

我是放在prepareedit中,测试发现应该是与列属性编辑锁定一样的功能。编辑日志这个字段出现一个锁的标志,管理员也无权限。不知道我有没有弄错?还是allowedit锁功能太强了?

--  作者:有点蓝
--  发布时间:2016/10/13 14:43:00
--  
在项目LoadUserSetting事件加上

Tables("XXX表").Cols("编辑日志").AllowEdit = True