1

私は次のコードを実行しています:

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オブジェクトをエクスポートするときにビューアのライブラリをプログラムで使用する方法はありますか?

4

0 に答える 0