Export Parameter Report

You can set report parameter default values or modify the values using the SetParameters() method of Report Writer instance. This section describes how to modify the exported document report parameter values.

This section requires an ASP.NET Web Forms Report Writer application, if you don’t have, then create by referring to the Getting-Started documentation.

In this tutorial, the sales-order-detail.rdl report is used and it can be downloaded here. You can get the reports from Bold Reports® installation location. For more information, refer to samples and demos section.

Set report parameters to export file

  1. Create a folder Resources folder in your application. Copy and paste the sample RDL reports into the Resoures folder.

  2. To load the report path on a Export() function to load the report as stream.

    public partial class _Default : Page
    {
        protected void ExportButton_Click(object sender, EventArgs e)
        {
            // Here, we have loaded the sample reports from application the Resources folder.
            BoldReports.Writer.ReportWriter writer = new BoldReports.Writer.ReportWriter();
            writer.ReportPath = Server.MapPath("~/Resources/sales-order-detail.rdl");
            writer.ReportProcessingMode = ProcessingMode.Remote;
            ......
        }
    }
  3. You can add collection of report parameters programmatically using the ReportParameter property that is the list type of Report Parameter class. Refer to the following code snippet to set the report parameter name and value.

    List<BoldReports.Web.ReportParameter> userParameters = new List<BoldReports.Web.ReportParameter>();
    userParameters.Add(new BoldReports.Web.ReportParameter()
    {
        Name = "SalesOrderNumber",
        Values = new List<string>() { "SO50756" }
    });
    
    writer.SetParameters(userParameters);
  4. You can use the Save method in Report Writer to generate the export document along with information of the report stream, it will return the generated file as Stream.

    protected void ExportButton_Click(object sender, EventArgs e)
    {
       // Here, we have loaded the sample reports from application the Resources folder.
       BoldReports.Writer.ReportWriter writer = new BoldReports.Writer.ReportWriter();
       writer.ReportPath = Server.MapPath("~/Resources/sales-order-detail.rdl");
       writer.ReportProcessingMode = ProcessingMode.Remote;
       HttpContext httpContext = System.Web.HttpContext.Current;
       List<BoldReports.Web.ReportParameter> userParameters = new List<BoldReports.Web.ReportParameter>();
    
       userParameters.Add(new BoldReports.Web.ReportParameter()
       {
           Name = "SalesOrderNumber",
           Values = new List<string>() { "SO50756" }
       });
    
       writer.SetParameters(userParameters);
    
       string fileName = null;
       WriterFormat format;
    
       if (this.ExportFormat.SelectedValue == "PDF")
       {
           fileName = "sales-order-detail.pdf";
           format = WriterFormat.PDF;
       }
       else if (this.ExportFormat.SelectedValue == "Word")
       {
           fileName = "sales-order-detail.docx";
           format = WriterFormat.Word;
       }
       else if (this.ExportFormat.SelectedValue == "Html")
       {
           fileName = "sales-order-detail.Html";
           format = WriterFormat.HTML;
       }
       else if (this.ExportFormat.SelectedValue == "PPT")
       {
           fileName = "sales-order-detail.ppt";
           format = WriterFormat.PPT;
       }
       else
       {
           fileName = "sales-order-detail.xlsx";
           format = WriterFormat.Excel;
       }
    
       writer.Save(fileName, format, httpContext.Response);  
    }
  5. Now, the parameter report exported successfully in your application.