1

私はflex-4に基づいたかなり大きなエンタープライズレベルのデータ分析ソフトウェアを開発しています。通常、ユーザーの選択に基づいてデータグリッドをフィルタリングする必要があります。これには、データベースでクエリを実行する必要があります。SQLクエリなしでグリッドデータをフィルタリングする方法があるかどうか疑問に思っていますか?それは私に2〜3分の遅れを引き起こしているところでは非常に短い時間しかかかりません。

4

2 に答える 2

1

ArrayCollection(またはICollectionViewの他の実装)を使用している場合は、ICollectionView.filterFunctionプロパティを確認してください。ユーザーの操作後に必要なものに設定し、ICollectionView.refresh()を呼び出すことができます。関連付けられているすべてのグリッドに、フィルター処理されたデータが自動的に表示されます。

于 2013-03-25T13:11:00.040 に答える
1

これをActionScriptで行う方法はたくさんあります。ただし、Flexを使用しているので、フレームワークに依存しましょう。探している機能filterFunctionドキュメントを参照):

などのデータオブジェクトを指定すると、次の{name:"Jo", type:"employee"}方法で従業員をフィルタリングできます。

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

その後、データグリッドを適宜更新する必要があります。

もちろん、リストに存在するアイテムの数によっては、これは瞬く間に実行されるか、ひどく遅くなる可能性があります=)

于 2013-03-25T13:11:47.623 に答える