ReportViewerでサブレポートを表示します。
使用例:売上データを表示するレポートに従業員データをサブレポートで表示します。
1.プロジェクトにデータセットを追加して売上データと従業員データを取得するデータアダプターを追加します。
2.従業員データを表示するレポートを作成します。
3.売上データを表示するレポートを作成します。
4.売上データレポートにサブレポートを追加します。
ReportNameに従業員データレポートを設定します。
5.フォームにReportViewerを配置し売上データレポートを表示します。
6.フォームにB indingSourceを追加しDataMemberに従業員データアダプターを設定します。
(DataMember設定後にDataAdapterが追加されます)
7.サブレポートで使用するデータソースを指定するSubReportProcessingイベントハンドラを追加します。
Imports Microsoft.Reporting.WinForms
Public Class Form1
'サブレポートで使用するデータソースにデータを指定する。
Public Sub SubReportProcessingEventHandler(ByVal sender As Object, ByVal e As SubreportProcessingEventArgs)
e.DataSources.Add(New ReportDataSource("DsEmployee", Me.EmployeeBindingSource))
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: このコード行はデータを 'DataSet1.EmployeeDataTable' テーブルに読み込みます。必要に応じて移動、または削除をしてください。
Me.EmployeeDataTableAdapter.Fill(Me.DataSet1.EmployeeDataTable)
'TODO: このコード行はデータを 'DataSet1.SalesDataTable' テーブルに読み込みます。必要に応じて移動、または削除をしてください。
Me.SalesDataTableAdapter.Fill(Me.DataSet1.SalesDataTable)
'SubReportProcessingEventHandlerを追加する。
AddHandler Me.ReportViewer1.LocalReport.SubreportProcessing, AddressOf SubReportProcessingEventHandler
Me.ReportViewer1.RefreshReport()
End Sub
End Class
8.実行します。