以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 如何禁止用命令增加行 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=9117) |
||||
-- 作者:sunnykorla -- 发布时间:2011/2/22 23:58:00 -- 如何禁止用命令增加行 AfterOpenProject DataTables("Title").AllowEdit = False button1 Click:Tables("Title").AddNew()
button2 Click:Tables("Title").Current.Delete
无论点击button1 or 2 功能全部能够实现。
这个是不是有问题?
|
||||
-- 作者:mr725 -- 发布时间:2011/2/23 0:42:00 -- DataTables("Title").AllowEdit = False 记得只针对手工操作,不能禁止代码的执行。。。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/2/23 7:59:00 -- 另外:表属性有“允许增加行”的选项,直接通过菜单设置也可以。 |
||||
-- 作者:狐哥 -- 发布时间:2011/2/23 12:16:00 -- 我是这样做的,参考一下,呵呵
增加行: Dim r As Row = Tables("业务录入").Current
删除行: Dim r As Row = Tables("业务录入").Current
锁单: Dim r As Row = Tables("业务录入").Current
解单: If Vars("用户组") <> "经理" Then
不知合不合理.反正达到要求了,哈哈
[此贴子已经被作者于2011-2-23 12:19:26编辑过]
|
||||
-- 作者:sunnykorla -- 发布时间:2011/2/23 14:18:00 -- 目的是这样的,给一个编辑录入界面,为防止数据随意改变,设置表锁定,需要编辑时解锁表。如果表在锁定情况下依然可以增加和删除行,那就没有必要锁定了,这个就是最大的危险,操作不当,那数据库就不复存在了,这个是安全问题。表锁定,菜单是不起效的,为何不能让这样的命令代码也不起效。我个人认为这个问题值得考虑!!! 感谢狐哥!!学习了!! |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/2/23 14:40:00 -- 可以自己删除菜单中的增加行和删除行的代码,自己写代码,先判断表是否锁定,如果没有锁定,再增加行或删除行。 |
||||
-- 作者:sunnykorla -- 发布时间:2011/2/23 18:18:00 -- 您的意思是判断DataTables or Tables 是否被锁定,然后执行。不过我记得好像DataTables or Tables 没有这样的属性,只有DataRow有,实验后可行。 谢谢!!! 请教: 除此之外还有没有什么办法能够判定DataTables or Tables 是否被锁定? |
||||
-- 作者:mr725 -- 发布时间:2011/2/23 18:34:00 -- 以下是引用sunnykorla在2011-2-23 18:18:00的发言:
您的意思是判断DataTables or Tables 是否被锁定,然后执行。不过我记得好像DataTables or Tables 没有这样的属性,只有DataRow有,实验后可行。 谢谢!!! 请教: 除此之外还有没有什么办法能够判定DataTables or Tables 是否被锁定? If CurrentTable.DataTable.AllowEdit = True ............ end if |
||||
-- 作者:sunnykorla -- 发布时间:2011/2/23 18:44:00 -- 以下是引用mr725在2011-2-23 18:34:00的发言:
If CurrentTable.DataTable.AllowEdit = True ............ end if
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/2/23 21:11:00 -- 应该是False,而不是True,你搞反了:
If CurrentTable.AllowEdit = False Then |