以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]一个表经过多次筛选,如何一步步返回,不能直接返回到最初的情况。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=133080)

--  作者:wendude
--  发布时间:2019/4/6 10:28:00
--  [求助]一个表经过多次筛选,如何一步步返回,不能直接返回到最初的情况。
1.使用代码:Syscmd.Edit.Undo()或者Syscmd.Filter.UnFilter(),均不可以。

2.使用代码:1、BeforeFilter事件代码:

If Tables("订单").Position >= 0 Then
    Vars("ddr") = Tables("订单").current.
DataRow

End
 If

2、AfterFilter事件代码:

If  Vars("ddr"IsNot Nothing Then
     
Tables("订单").Position = Tables("订单").FindRow(Vars("ddr"))
End
 If

上述代码均不可以,想一步一步的返回。谢谢


--  作者:有点蓝
--  发布时间:2019/4/6 11:08:00
--  
你要使用一个集合,记录每一步筛选的条件

比如有全局变量
public lst as new List(of string)

第一次筛选:
lst.add(table.filter)
table.filter = "条件1"

第二次筛选:
lst.add(table.filter)
table.filter = "条件2"

回退
dim filter as string = lst(lst.count - 1)
lst.remove(filter)
table.filter = filter