Я реализовал цикл, который экспортирует хрустальный отчет в pdf. Идея заключается в инициализации исходного отчета с его коннектом, а затем внутри цикла, применяющего параметры перед экспортом в PDF (поэтому я получаю один PDF для каждой записи), но в отчете сохраняется экспорт pdf с данными первого выполнения цикла. Как я могу заставить его обновить свои данные после применения новых параметров?Экспорт отчетов Crystal Reports в pdf, отчет не применяет новые параметры после первого экспорта
Пример кода:
ReportDocument reportDoc=new ReportDocument();
reportDoc.Load("c:\\reportx.rpt");
ConnectionInfo cinfo = FunctionLibrary.getCrystalConection();
foreach (Table table in reportDoc.Database.Tables)
{
table.LogOnInfo.ConnectionInfo = cinfo;
table.ApplyLogOnInfo(table.LogOnInfo);
}
string[] docnumbers=new[]{"1","2","3","4"};
for(int i=0;i<docnumbers.Lenght; i++)
{
report.SetParameterValue(0, docnumbers[i]);
report.Refresh();
DiskFileDestinationOptions CrDiskFileDestinationOptions = new DiskFileDestinationOptions();
PdfRtfWordFormatOptions CrFormatTypeOptions = new PdfRtfWordFormatOptions();
CrDiskFileDestinationOptions.DiskFileName = "C:\\generatedpdf " + docnumbers[i] + ".pdf";
ExportOptions CrExportOptions = reportDoc.ExportOptions;
{
CrExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
CrExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
CrExportOptions.DestinationOptions = CrDiskFileDestinationOptions;
CrExportOptions.FormatOptions = CrFormatTypeOptions;
}
reportDoc.Export();
}
reportDoc.Close();
Вы уверены, что если вы пройдете «2» в первый раз, то увидите правильные данные? –
Я застрял в течение 2 дней, пытаясь добиться этой точной работы. Этот код дал мне правильный путь. –