|
分類:[.NET 全般]
VB.netでACtiveReportsを使用しています。
親レポートにサブレポートを貼っているのですが、 このサブレポートのデータにCSVファイルを使うにはどうすればよいのでしょうか。
また、普通のレポートは ME.DataSource = ○○ と直接データソースと接続するか、データリーダやデータセットでフィールドの値を設定する方法があることを学んだのですが、 このデータリーダやデータセットでフィールドの値を設定する方法の方でサブレポートのデータのフィールドを設定するにはどうすればよいのでしょうか。
Private days As String
Private Sub rptmain_DataInitialize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.DataInitialize Dim dsmain As New DataDynamics.ActiveReports.DataSources.OleDBDataSource dsmain.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\ActiveReport\名簿表.mdb;Persist Security Info=False" dsmain.SQL = "SELECT * FROM 名簿日付 ORDER BY 日付" Me.DataSource = dsmain
End Sub
Private Sub rptmain_FetchData(ByVal sender As Object, ByVal eArgs As DataDynamics.ActiveReports.ActiveReport.FetchEventArgs) Handles Me.FetchData days = Fields("日付").Value End Sub
Private Sub Detail_Format(ByVal sender As Object, ByVal e As System.EventArgs) Handles Detail.Format Dim rpt As New rptsub() Dim Dssub As New DataDynamics.ActiveReports.DataSources.OleDBDataSource Dssub.ConnectionString = CType(Me.DataSource, _ DataDynamics.ActiveReports.DataSources.OleDBDataSource).ConnectionString Dssub.SQL = "SELECT * FROM 名簿 WHERE 日付 = #" & days & "#" rpt.DataSource = Dssub
SubReport1.Report = rpt End Sub
現在は親レポートに日付、サブレポートにそれ以外のフィールドをセットしています。 この フォーマットイベントのrpt.DataSource = Dssubと今は書いているのですが、ここでデータリーダーを使用したり、CSVファイルを何か工夫して使えるのかが知りたいです。 よろしくお願いします。
|