以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  删除行后能否撤消?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=40987)

--  作者:mamuaiqing
--  发布时间:2013/10/8 20:35:00
--  删除行后能否撤消?
项目 表 中不小心误删了某一行,想做个撤消指令,让删除掉的行又回到表中,请教老师该怎么实现?
--  作者:有点甜
--  发布时间:2013/10/8 20:45:00
--  
 DataTables("xxx").RejectChanges
--  作者:程兴刚
--  发布时间:2013/10/8 20:49:00
--  
http://www.foxtable.com/help/topics/1632.htm
--  作者:mamuaiqing
--  发布时间:2013/10/8 21:06:00
--  
感谢程老师跟有点甜老师的帮助,能否实现像窗口设计中的撤消指令一样,一步步的来,比如一下删除了多行算一步,一下删除一行算一步
--  作者:有点甜
--  发布时间:2013/10/8 21:13:00
--  
 这样的话,就要写代码咯。

 编写表beforedeleted的事件,把数据存储到一个回收表里去,撤销的时候一行一行读取表里的数据,新增插入回去。

 没有便捷的方法。

--  作者:程兴刚
--  发布时间:2013/10/8 21:27:00
--  
去掉现有的删除行功能,每一个表增加一个标识列,作为删除标识,删除行只是给这些行做标识并重新加载,所有的统计代码的条件和加载条件都过滤掉有标识的行,退出项目时再删除掉有删除标识的行,这样就可以避免误删除了,至于项目关闭后、数据已经保存,那就不必再恢复了。
--  作者:mamuaiqing
--  发布时间:2013/10/8 21:27:00
--  
明白了,那学生就在全局代码中定义一个DataTable类型的Public变量,在删除按狃中先把行的内容增加到变量中再删除掉,再在撤消指令中将删除的行新增到表中,感谢有点甜老师的指导
--  作者:lsy
--  发布时间:2013/10/9 7:36:00
--  

保存过的数据,而且其他地方又引用这条数据,那就绝对不允许物理删除,只能做状态标记:已删除、已停用、已退费、已退货、已冲销,等等等等。