以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 非管理员不能删除数据,但是通过窗口按钮可以删除数据怎么弄? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=147712) |
|
-- 作者:yacity -- 发布时间:2020/3/22 18:41:00 -- 非管理员不能删除数据,但是通过窗口按钮可以删除数据怎么弄? 如标题。非管理员不能删除数据,但是通过窗口的取消按钮可以删除当前新增的行怎么弄? 客户信息表(kehu) BeforeDeleteDataRow 事件 If User.name<> "管理员" Then
e.Cancel = True \'那么取消输入并提示用户 Messagebox.Show("请联系管理员删除客户信息","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) End If |
|
-- 作者:有点蓝 -- 发布时间:2020/3/22 22:29:00 -- 取消使用的是RejectChanges,这个不会触发BeforeDeleteDataRow 事件,撤销是另外一种行为,不是删除。 直接在取消按钮里判断 if User.name<> "管理员" then e.Cancel = True \'那么取消输入并提示用户 Messagebox.Show("请联系管理员删除客户信息","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) end if 这里是撤销的代码
|
|
-- 作者:yacity -- 发布时间:2020/3/24 9:31:00 -- 因为打开窗口后,立马新增一行才能在窗口里输入数据。 窗口 AfterLoad 事件,Tables("kehu").AddNew() 那么对应的,如果窗口控件 触发确认按钮,则保存这一行。如果取消则删除这一行。(比如录入新客户信息的时候发现重复了,肯定要选取消按钮,肯定要删除这一行) 取消的按钮事件 Tables("kehu").Current.Delete() e.Form.Close()
|
|
-- 作者:yacity -- 发布时间:2020/3/24 9:36:00 -- 如一楼的图片,因为取消的时候不能删除当前录入错误的数据,所以经过多次“取消”后,会出现很多空数据行,或者错误的数据。这样是不对的。 |
|
-- 作者:有点蓝 -- 发布时间:2020/3/24 10:28:00 -- 取消按钮 Dim r As Row = Tables("kehu").Current If r IsNot Nothing Then If r.DataRow.RowState = DataRowState.Added systemrerady = False r.Delete systemrerady = True End If End If |