- - PR -
【CrystalReports】 サブレポートを使用するとレスポンスが遅くなる
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-01-06 21:34
初めまして。
表題の件について過去の質問を見ましたが、 同じ現象がありませんでしたので、ご質問させて頂きます。 <環境> VB.NET2003 クリスタルレポートXI <現象> サブレポートを使用すると、レスポンスが遅くなります。 サブレポートを1つ使用すると、表示時間が約1分。 サブレポートを3つ使用すると、表示時間が5分以上。 という感じで実用に耐えられない速度です。 CSVデータをデータソースとしており、 同一ファイルを読み込むようにしています。 同一ファイルを使用していることが原因かと思い、 メインレポートとサブレポートのCSVを分けてみました。 しかし、メインレポートの表示ロジックの部分で遅くなっているようです。 (SetDataSourceメソッドでデータをセットするタイミング) やりたいことは、 1頁に複数の「詳細」を条件分けして表示し、 それぞれにヘッダーとフッダーを表示することです。 サブレポートで行うのが最適だと思うのですが、 他の方法を考えるべきか悩んでおります。 同じ現象を経験した方やおわかりの方がいらっしゃいましたら、ご教授下さい。 宜しくお願い致します。 | ||||||||
|
投稿日時: 2007-01-06 23:00
それは、致し方ないですね。
これは、さすがにサブレポートのせいというよりは、 レポート自体が複雑になっている可能性が高いと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2007-01-08 23:56
>じゃんぬねっと 様
ご回答ありがとうございます。 レポートを再度、見直してみましたが、 項目数:メインレポート、サブレポート共に15個前後 グループ化:メインレポート、サブレポート共に1項目でのみ サブレポートのリンク:1項目のみ という感じです。 一般的に見てもたぶん複雑な方ではないと思います。 設定に問題があるかと思い、色々と変えて行ってみましたが、 改善できませんでした。 明日、もう少し頑張ってみて、 ダメだったら他の方法を考えてみようと思います。 | ||||||||
|
投稿日時: 2007-01-09 00:11
あとは、データの件数とリレーションについての情報が欲しいですよね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2007-01-09 22:06
>じゃんぬねっと 様 迅速なご回答ありがとうございます。 また、私の方の返答が遅くなってしまい申し訳ありません。 <データ件数> 20件ほどです。 データ件数を少なくすると、 若干、表示時間が早くなるようです。 <リレーション> データセットで行っております。 下記のソースです。 Dim rdSuppliers As New ReportDocument Dim RptConn As New OleDbConnection Dim RptCommand As New OleDbCommand Dim RptDataset As New DataSet Dim RptDataAdapter As New OleDbDataAdapter 'DB接続文字列の設定 '注:プロジェクトファイルホルダの下にあるbinホルダにcsvファイルを置く RptConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + _ "Data Source=" & CSVDir & ";" & "Extended Properties=""Text;HDR=YES;FMT=Delimited""" 'コネクションの設定 RptCommand.Connection = RptConn 'SQL文の設定 RptCommand.CommandText = "SELECT * FROM " & Request.QueryString("csvFile") 'データを取得する RptDataAdapter.SelectCommand = RptCommand RptDataset.Clear() RptDataAdapter.Fill(RptDataset) rdSuppliers.Load(RPTDir & Request.QueryString("rptID") & ".rpt") rdSuppliers.SetDataSource(RptDataset) サブレポートを使用しなければ正常に動くので、 これらは問題ないとは思うのですが、 もし何かお気付きの点がありましたら、ご指摘をお願いします。 |
1