2013-03-25 63 views
1

我正在开发一个基于flex-4的相当大的企业级数据分析软件。我通常需要根据用户选择过滤数据网格,这需要在我的数据库上运行查询。我想知道是否有任何方法来筛选网格数据没有SQL查询?如果现在造成2-3分钟的延迟,那需要很少的时间。无sql查询过滤数据

回答

1

如果您使用ArrayCollection(或ICollectionView的其他实现),请查看ICollectionView.filterFunction property。您可以在用户交互后将其设置为所需内容并调用ICollectionView.refresh() - 然后,所有关联的网格都应自动显示过滤的数据。

+0

Oups!相同的答案-_- – 2013-03-25 13:12:17

+0

因此,这两个答案是相同的,也很有用,我认为这将是适当的接受他们两个:) – 2013-03-28 04:18:55

1

在ActionScript中有很多方法可以做到这一点。但是,由于您使用Flex,因此我们需要依赖该框架。您正在寻找filterFunction的功能(见​​):

如果有一个数据对象,如{name:"Jo", type:"employee"},你可以用过滤员工:

myArrayCollection.filterFunction = function(data:Object):Boolean { 
    return data.type == "employee"; 
} 
myArrayCollection.refresh(); 

你的数据网格,然后应进行相应的更新。

当然,这取决于项目存在于你的列表的数量,这可能在眨眼间运行,或者是可怕的慢=)

+0

是的好友,作品缓慢的真正的大数据: – 2013-03-28 05:19:15

+0

如果这是一个AIR应用程序,使用SQLLite可能是一个不错的选择。如果不是,那么XML/E4X可以提供更好的性能。 – 2013-03-28 14:15:57