【解決方法】同じデータテーブル内のデータをマージするにはどうすればよいですか


DataTable のデータとして

Time 	Col1	Col2
10:00	1	
11:00	2	
10:00		3
11:00		4

私はそれを整理する必要があります
時間 Col1 Col2
10:00 1 3
11:00 2 4

私が試したこと:

現在、マージに 2 つの異なるテーブルを使用していますが、これは膨大なデータに時間がかかっています。

解決策 2

私はRDLCを使ったことがありません。 RDLCと仮定します DataSource バインディングは、他の WinForm コントロールと同じように機能します。 DataGridView.

私の考えは次のとおりです。
※シングルを使用 DataTable、2 ではありません。
* フィルター列を DataTableFilterColumn この解決策の目的のために

これで、次のことができます。

C#
dataTable.Columns.Add(new DataColumn("FilterColumn"));

DataView view1 = dataTable1;

BindingSource bindingSource1 = new();
bindingSource1.DataSource = view1;
bindingSource1.Filter = "FilterColumn = col1"

rdlc1.DataSource = bindingSource1;

BindingSource bindingSource2 = new();
bindingSource2.DataSource = view1;
bindingSource2.Filter = "FilterColumn = col2"

rdlc2.DataSource = bindingSource2;

(注:これは手作業でコーディングされており、テストされていません)

概念上、1 セットのデータを使用して 2 つの異なるレポートを作成します。 手動でマージする必要はありません。

コメント

タイトルとURLをコピーしました