使用Crystal报表我正在导出大量报告(超过1000个),并导出为pdf。 当我的应用程序在具有数据库A的服务器上运行时,没有问题,但是当我在具有数据库B的另一台服务器(Windows Server 2012 r2)上运行我的应用程序时,异常CrystalDecisins.CrystalReports.Engine.ExportException:文件[tempFileName]中的错误。 rpt:导出DLL检测到错误。
我试图制作一个报告,并将其导出为pdf,仅包含异常但没有问题的数据。
数据库的loginfo就是这样的:
report = new ReportDocument();
report.Load(path);
foreach (Table table in report.Database.Tables)
{
table.LogOnInfo.ConnectionInfo = ciReportConnection;
table.ApplyLogOnInfo(table.LogOnInfo);
}
foreach (ReportDocument subrep in report.Subreports)
{
foreach (Table table in subrep.Database.Tables)
{
table.LogOnInfo.ConnectionInfo = ciReportConnection;
table.ApplyLogOnInfo(table.LogOnInfo);
}
}
我这样导出报告:
ExportOptions CrExportOptions;
DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions();
PdfRtfWordFormatOptions CrFormatTypeOptions = new PdfRtfWordFormatOptions();
CrDiskFileDestinationOptions.DiskFileName = pathSEND + $"ADD_DEV_{timeStamp}.pdf";
pathSEND += $"ADD_DEV_{timeStamp}.pdf";
CrExportOptions = report.ExportOptions;
{
CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
CrExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
CrExportOptions.DestinationOptions = CrDiskFileDestinationOptions;
CrExportOptions.FormatOptions = CrFormatTypeOptions;
}
report.Export();
最后我处理报告:
report.Close();
report.Dispose();
report = null;
服务器上安装了用于.Net Framework(64位)版本13.0.16.1954的SAP Crystal Reports运行时引擎。
在堆栈跟踪中,异常位于CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.Export(ExportOptions pExportOptions,RequestContext pRequestContext)
报告中有3张图像不是来自数据库,而是直接放在报告中。 所有文本使用的字体均为arial。
任何想法如何处理此错误?