本帖最后由 Eden.Sun 于 2025-4-11 10:17 编辑
最近有很多小伙伴咨询自定义导出报表的代码书写方式,这里我们整理了三种常见的报表导出的代码,有需要的小伙伴可以参考使用。
总体逻辑基本都类似:
① 加载到报表文件;
② 如果需要设置参数,就设置报表参数;
③ 创建导出目录;
④ 设置导出类型的配置项;
⑤ 导出文件。
如导出PDF:
- // 导出pdf
- private void Form1_Load(object sender, EventArgs e)
- {
- // Provide the page report you want to render.
- //System.IO.FileInfo rptPath = new System.IO.FileInfo(@"demo有参数.rdlx");
- System.IO.FileInfo rptPath = new System.IO.FileInfo(@"demo0920.rdlx");
- GrapeCity.ActiveReports.PageReport pageReport = new GrapeCity.ActiveReports.PageReport(rptPath);
- //传多值参数,参数是可选时,值必须来自于可选值,参数是默认时直接添加即可。
- //pageReport.Report.ReportParameters[0].DefaultValue.Values.Add("西北");
- //pageReport.Report.ReportParameters[0].DefaultValue.Values.Add("东北");
- pageReport.Report.ReportParameters[0].DefaultValue.Values.Add("1000");
- pageReport.Report.ReportParameters[1].DefaultValue.Values.Add("华北");
- pageReport.Report.ReportParameters[1].DefaultValue.Values.Add("华东");
- pageReport.Report.ReportParameters[1].DefaultValue.Values.Add("东北");
- // Create an output directory.
- System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"C:\Users\bellayuan\Downloads\MyPDF");
- outputDirectory.Create();
- // Provide settings for your rendering output.
- GrapeCity.ActiveReports.Export.Pdf.Page.Settings pdfSetting = new GrapeCity.ActiveReports.Export.Pdf.Page.Settings();
- // Set the rendering extension and render the report.
- GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension pdfRenderingExtension = new GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension();
- GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider outputProvider = new GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, System.IO.Path.GetFileNameWithoutExtension(outputDirectory.Name));
- // Overwrite output file if it already exists
- outputProvider.OverwriteOutputFile = true;
- pageReport.Document.Render(pdfRenderingExtension, outputProvider, pdfSetting);
- }
复制代码
其他的导出逻辑都类似,大家可以从附件中的 demo 进行参考。
|