ActiveReportsは、DataReaderを作成し、それを使用してデータをレポートにロードします。SQL文字列には、レポートパラメータのコレクションを置換したり、レポート実行前にユーザーに入力を求めるためのパラメータプレースホルダ構文を含めたりすることができます。
Private void rpt_ReportStart(object sender, System.EventArgs eArgs) { ((GrapeCity.ActiveReports.Data.OleDBDataSource)(this.DataSource)).ConnectionString = @"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=AdventureWorks2000;Data Source=TESTING"; ((GrapeCity.ActiveReports.Data.OleDBDataSource)(this.DataSource)).CommandTimeout = 30; System.IO.StringReader sr = new System.IO.StringReader(new System.IO.StreamReader("..\\..\\sqlString.txt").ReadToEnd()); ((GrapeCity.ActiveReports.Data.OleDBDataSource)(this.DataSource)).SQL = sr.ReadToEnd(); sr.Close(); }
Private Sub rpt_ReportStart(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.ReportStart CType(Me.DataSource, GrapeCity.ActiveReports.Data.OleDBDataSource).CommandTimeout = 30 CType(Me.DataSource, GrapeCity.ActiveReports.Data.OleDBDataSource).ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=AdventureWorks2000;Data Source=TESTING" Dim sr As New System.IO.StringReader(New System.IO.StreamReader("..\\..\\sqlString.txt").ReadToEnd()) CType(Me.DataSource, GrapeCity.ActiveReports.Data.OleDBDataSource).SQL = sr.ReadToEnd End Sub