以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于权限问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=54767) |
-- 作者:爱相随 -- 发布时间:2014/8/4 13:32:00 -- 关于权限问题 老师,我通过代码设置按钮给予了各级人员的权限,但有个问题,就是可以通过单元格直接清除内容,比如用户崔雪花是数据录入人,登陆后填报人列会自动加上崔雪花用户名,数据上报后上报人列也自动加上崔雪花用户名,但是,可以通过直接点击单元格,把用填报人列和上报人列的户名删除掉,连录入人还能把审核人的名字可以通过单击单元格的方或清除掉,怎样才能避免直接点击单元格删除数据这种情况? [此贴子已经被作者于2014-8-4 13:36:20编辑过]
|
-- 作者:Bin -- 发布时间:2014/8/4 14:24:00 -- 锁定列.或者在PrepareEdit事件编写代码做限制.http://www.foxtable.com/help/topics/0605.htm |
-- 作者:爱相随 -- 发布时间:2014/8/4 14:58:00 -- 老师,下面的信息是什么意思呢?? .NET Framework 版本:2.0.50727.3053 Foxtable 版本:2014.5.12.1 错误所在事件:表,ZJJHB,PrepareEdit 详细错误信息: Exception has been thrown by the target of an invocation. Public member \'IsNULL\' on type \'String\' not found.
|
-- 作者:有点甜 -- 发布时间:2014/8/4 15:58:00 -- 你代码怎么写的?贴出来看看 |
-- 作者:爱相随 -- 发布时间:2014/8/4 16:15:00 -- 老师,请帮我看下这段代码,老是“已审核,不能编辑”退不出来。 If User.IsRole("审核人2") Then Select Case e.Col.Name Case "SHYJ","YYSM","SH1","SH" e.Cancel = False If E.Row.IsNULL("SH") = True Then e.Cancel = False Else MessageBox.Show("已审核,不能编辑") End If End Select ElseIf User.IsRole("审核人3") Then Select Case e.Col.Name Case "FKBM" e.Cancel = False End Select ElseIf User.IsRole("付款人") Then Select Case e.Col.Name Case "JZ" e.Cancel = False End Select End If
|
-- 作者:Bin -- 发布时间:2014/8/4 16:17:00 -- PrepareEdit 可不能用MEssagebox.SHOW 否则就会卡住死循环了 |
-- 作者:爱相随 -- 发布时间:2014/8/4 16:18:00 -- 那怎么办呢? |
-- 作者:有点甜 -- 发布时间:2014/8/4 16:20:00 -- 以下是引用爱相随在2014-8-4 16:18:00的发言:
那怎么办呢?
写到startEdit事件,或者Click事件 |
-- 作者:爱相随 -- 发布时间:2014/8/4 16:21:00 -- 那就不要这段代码?? Else MessageBox.Show("已审核,不能编辑") [此贴子已经被作者于2014-8-4 16:21:50编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/8/4 16:21:00 -- 8楼,指的是msgbox的代码。 |