Страница 1 из 1

Экспорт отчета без отображения

Добавлено: 03 окт 2006, 10:21
BeraleX
Здравствуйте,

Возникла такая задача - необходимо загрузить отчет из потока, передать ему параметры и экспортировать в один из форматов без его отображения. Посоветуйте, пожалуйста, оптимальный путь решения, если можно - с примером кода.
Заранее спасибо.

Экспорт отчета без отображения

Добавлено: 03 окт 2006, 15:00
Edward
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");

Спасибо.