0

シナリオは次のとおりです。

列の1つにXML文字列を格納するデータベーステーブルを使用しています。このXMLには、CrystalReportsの使用に関するレポートの生成に取り組んでいる重要なデータが含まれています。これを行うために、XML文字列から関連データを表すオブジェクトを作成し、これらのオブジェクトのリストをレポートビューアにバインドしました。私はCrystalReportsでネイティブコントロールを使用してフィルタリングと並べ替えを設定する作業を少し行いましたが、これは私が実行できるようにしたい種類のフィルタリングを処理するのに十分なほど冗長ではないことが判明しています。

オブジェクトのリストをフィルタリングするために使用できる式をユーザーが作成できるようにする、ある種のUIコントロールが必要です。次に、リストをプログラムで、関連するオブジェクトを使用してレポートビューアにバインドできます。

明確にするために、私がやりたいことの例。ユーザーが9-10から12-2または4-5の間に発生した特定の製品のすべてのトランザクションを選択できるようにします。基本的に、オブジェクト内の任意のプロパティの論理演算を使用してクエリ制御を与えます。

これを達成する方法についての考えや提案はありますか?この種の機能を備えたツールを誰かが知っているかどうか疑問に思っていました。

4

1 に答える 1

2

テキストベースのクエリが優れたユーザーエクスペリエンスで使用されることはめったにありません。これらは、人間が読み取れる方法と機械が読み取れる方法の両方で、あるソフトウェアが別のソフトウェアと通信するためによく使用されます。

クエリを作成するためのUIを作成する方がおそらく良いでしょう。たとえば、制約のタイプを表すクラスを作成し、リストボックス内の各クエリの制約のリストを維持できます。次に、ユーザーは必要に応じて制約のリストに制約を追加および削除できます。ListBoxの選択した項目を制約ビルダーコントロールにバインドし、制約のタイプ(文字列の一致、日付範囲など)を選択できるようにします。

于 2012-09-07T13:57:10.163 に答える