以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]请教关于限制编辑的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=63802)

--  作者:我来看看
--  发布时间:2015/1/29 10:29:00
--  [求助]请教关于限制编辑的问题
请问,如何限制用户只能修改自己录入的内容,其他人无法修改自己录入的内容(包括管理员也不能修改)???
--  作者:Bin
--  发布时间:2015/1/29 10:32:00
--  
增加一个 "录入用户" 列   新增行的时候就为这个列赋值

PrepareEdit事件判断一下列和当前用户是否相等

if e.row("录入用户") <> user.name then
   e.cancel=true
end if

--  作者:我来看看
--  发布时间:2015/1/29 11:16:00
--  
不对呀,管理员还是可以编辑呀
--  作者:Bin
--  发布时间:2015/1/29 11:18:00
--  
呵呵.不可能呢.除非你这里的录入用户就是管理员
--  作者:我来看看
--  发布时间:2015/1/29 11:25:00
--  

真的是可以编辑的,是不是和我在前面设置的代码:管理员可以查看全部部门的信息,而各部门只能查看各部门自己的信息,这个代码有冲突啊??????????

 

 

还有一个问题,我在设置了一个日期列,这个设置的是系统自动录入新增信息的时间,采用的是DayTime.Taday这个值,可是为什么自动填入的日起对,可是时间确实00:00


--  作者:有点甜
--  发布时间:2015/1/29 11:27:00
--  

1、贴出prepareEdit全部代码;同时,你是在表里编辑还是在窗口编辑啊

 

2、 Date.Now


--  作者:Bin
--  发布时间:2015/1/29 11:27:00
--  
上例子.
--  作者:Bin
--  发布时间:2015/1/29 11:27:00
--  
时间用date.now
--  作者:我来看看
--  发布时间:2015/1/29 16:38:00
--  

首先谢谢老师录入时间的问题解决了

 

我在prepareEdit中就是写的您给的代码,没有其他的代码呀,我的数据表的设计是不可以编辑,通过窗口可以进行数据录入的。


--  作者:有点甜
--  发布时间:2015/1/29 16:41:00
--  

下面代码写到Datacolchanging事件,编辑是不会生效的

 

If e.DataRow("录入用户") <> user.name Then
   e.cancel=True
End If