私は、1つの大きな情報テーブルを生成するプログラムを作成しています。テーブルは、2種類の列、数量を含む列、およびプロパティを含む列で構成されています。数量は合計することができる数値であり、プロパティは数量値を表す質的な値です。ユーザーがテーブルのカスタムクエリを作成できるようにする
データがデータベース内のテーブルにある場合、特定のプロパティと量を選択し、選択したプロパティと同じ値を持つ量を合計するクエリを作成できます。
例:
表:
Quanity1 Quanity2 Quanity3 Property1 Property2 Property3
12 43 12 RED Long Rough
43 23 23 Blue Short Smooth
43 90 34 RED Fat Bumpy
問合せ:
SELECT sum(Quanity1), sum(Quanity2), Property1 FROM Table Group By Property1
結果:
Quanity1 Quanity2 Property1
43 23 Blue
55 133 Red
私がしたいことは、SQLクエリやそのようなコードを書く方法を知っているユーザーに、これを行うためのグラフィカルインターフェイスを与えることです。表示するプロパティと量を選択するリストボックスのセットなど、選択されたフィールドに合計量を表示するテーブルが表示されます。私は後で、特定の条件に基づいてフィルタリングするなどのアクションのような、他のSQLクエリを実行するためのユーザの機能を追加することもできます。また、後でこれらのユーザークエリに基づいて見栄えのよいレポートを生成する必要があることもわかっています。
私は、一般的にADOと.NETの新機能です。しかし、私はこれを行う最善の方法は、私のデータをSystem.Data.DataTableにエクスポートして、それがRowFilterプロパティの文字列を生成することによってSystem.Data.DataViewを作成するためのインタフェースを作成することだと考えています。ただし、DataTableのフィルタリングと並べ替えだけでなく、大きなマスターテーブルの特定の列のみを含む別のテーブルやビューの生成方法はわかりません。
全体的にこのサウンドは最適ですか、それとも私が検討すべき別の方法がありますか?誰も私はこれを実装する必要がありますどのような具体的なヒントや提案がありますか?私はLINQでこれが簡単にできるかどうかも疑問を呈していました。
更新 は、私がアクセスまたは他の利用可能なツールを使用しての提案に感謝し、それは本当にオプションではありません。アクセスはあまりにも複雑で、ここでユーザーが理解しようとすると、実際にはもっと必要です。私は常に上級ユーザーのためのオプションとしてAccessを残したいと思います。しかし、ユーザーが希望する列を選択し、ソフトウェアが自動的に適切な列を選択して合計するビュー/クエリを作成する、基本的なクエリ機能をセットアップしたいと思います。
複雑であることを除けば、Accessのもう1つの問題は、データ構造内の何かを変更してレポートの変更を見ることが多くのクリックにあります。私はユーザーが何かを変えたり、アクセスするために再エクスポートしたり、別のプログラムを開いたりして、レポートを開いてその変更の効果を確認する必要はありません。