Здравствуйте,
Возникла такая задача - необходимо загрузить отчет из потока, передать ему параметры и экспортировать в один из форматов без его отображения. Посоветуйте, пожалуйста, оптимальный путь решения, если можно - с примером кода.
Заранее спасибо.
Экспорт отчета без отображения
Экспорт отчета без отображения
Используйте, пожалуйста следующий код:BeraleX писал(а):Здравствуйте,
Возникла такая задача - необходимо загрузить отчет из потока, передать ему параметры и экспортировать в один из форматов без его отображения. Посоветуйте, пожалуйста, оптимальный путь решения, если можно - с примером кода.
Заранее спасибо.
Код: Выделить всё
StiReport report = new StiReport();
FileStream stream = new FileStream("D:\\SQLMasterDetail.mrt",FileMode.Open);
DataSet ds = new DataSet();
OleDbConnection connection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\Projects\\DATA\\NWIND.MDB");
report.RegData("NorthWind", connection);
report.Load(stream);
//Компиляция отчета и изменение параметра в скомпилированном отчете
report.Compile();
// Параметр @MyCategory в запросе не должен быть инициализирован значением по умолчанию
report.CompiledReport.DataSources["Categories"].Parameters["@MyCategory"].ParameterValue = "2";
report.Render(false);
//Экспорт документа в PDF
report.ExportDocument(StiExportFormat.Pdf, "D:\\document.pdf");
//или
report.ExportDocument(new StiPdfExportService(), "d:\\document.pdf");
Спасибо.