私は次のコードを実行しています:
ReportDocument crystalReport = new ReportDocument();
crystalReport.Load(reportPath);
DataTable dtReportData;
DbUtils.GetSqlResult(dataQuery, out dtReportData);
crystalReport.SetDataSource(dtReportData);
var crDiskFileDestinationOptions = new DiskFileDestinationOptions();
var crFormatTypeOptions = new PdfRtfWordFormatOptions();
crDiskFileDestinationOptions.DiskFileName = pdfFilePath;
crystalReport.PrintOptions.PaperOrientation = PaperOrientation.Landscape;
var crExportOptions = crystalReport.ExportOptions;
{
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
crExportOptions.FormatOptions = crFormatTypeOptions;
}
crystalReport.Export(); //PROGRAM FAILS HERE WHEN THE DATATABLE CONTAINS 900 OR MORE ROWS
crystalReport.Close();
また、900行を超えるテーブルをデータソースとして含むレポートをPDFにエクスポートしようとすると失敗します。例外は次のとおりです。
レポートアプリケーションサーバーに障害が発生しました
そして、スタックトレースは次のとおりです。
CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e)at CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext)at CrystalDecisions.CrystalReports.Engine.FormatEngine.ExportToStream(ExportRequestContext reqContext)at CrystalDecisions.CrystalReports.Engine reqContext)at CrystalDecisions.CrystalReports.Engine.FormatEngine.Export()at CrystalDecisions.CrystalReports.Engine.ReportDocument.Export()
この問題にどのように取り組むかについて何か考えはありますか?
アップデート
Crystal Reports Viewerを使用している場合、Crystal Reports Designerから同じアクションを実行するとエラーが発生しますが、レポートをPDFにエクスポートできます。Crystal Reportsオブジェクトをエクスポートするときにビューアのライブラリをプログラムで使用する方法はありますか?