2013-03-25 102 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