3

我想将参数传递给我的报告视图。我有一个包含数据库值的下拉列表和一个用于在从下拉列表中选择项目后显示报告的按钮。

这是我为添加参数而编写的代码

protected void Button1_Click(object sender, EventArgs e)
{
    RenderReport();
}

protected void RenderReport()
{
    try
    {
        ServerReport serverReport = ReportViewer1.ServerReport;
        ReportViewer1.ProcessingMode = ProcessingMode.Remote;
        try
        {
            serverReport.ReportServerUrl = new Uri("http://hedinaily-pc/Reports_HEDI");
        }
        catch (Exception ex)
        {
            Logger.Error(ex.Message, "");
        }
        serverReport.ReportPath = "~/Diagrammes/PresenceTotale.rdlc";
        ReportParameter employe = new ReportParameter();
        employe.Name = "Employe";
        employe.Values.Add(DropDownList1.SelectedValue);
        ReportViewer1.ServerReport.SetParameters( new ReportParameter[] { employe });
        ReportViewer1.Visible = true;               
    }

    catch (Exception ex)
    {
        Logger.Error(ex.Message, "");

    }

}

这是我报告的数据集

在此处输入图像描述

当我检查我的日志文件时,我发现了这个错误:

The attempt to connect to the report server failed.  Check your connection information and that the report server is a compatible version.

谁能告诉我这个错误来自哪里。我花了几个小时在谷歌上搜索我找到了这个LINK但我无法解决它。

4

4 回答 4

3

试试这样...

ReportViewer1.ServerReport.ReportPath = "FooReport.rdlc";
ReportParameter[] reportParameter = new ReportParameter[2];
reportParameter[0] = new ReportParameter("fooFromDate", dateFrom.ToShortDateString());
reportParameter[1] = new ReportParameter("fooDateTo", dateTo.ToShortDateString());
ReportViewer1.ServerReport.SetParameters(reportParameter);
ReportViewer1.ServerReport.Refresh();

.Refresh()必须调用方法以便...显示报告..

于 2012-08-29T11:48:38.200 回答
0

对于“连接到报表服务器的尝试失败。请检查您的连接信息以及报表服务器是否为兼容版本。” 错误尝试:

serverReport.ReportPath = "/Diagrammes/PresenceTotale";

代替:

serverReport.ReportPath = "~/Diagrammes/PresenceTotale.rdlc";

于 2013-11-01T15:09:46.267 回答
0

一种方法是使用“报告参数”对话框为在本地模式下处理的报告定义参数。您可以定义参数以支持条件格式或在表达式或代码中使用。您不能使用“报表参数”对话框将报表参数映射到查询参数或在数据源过滤器中使用它们。

因此,您可以通过使用 sqlParameters 将参数传递给 SP,就像我们在正常操作中所做的那样。然后执行 SP 将其绑定到报表查看器数据源。

于 2012-08-29T11:42:43.673 回答
0

您可以使用此代码进行测试

    ReportParameter[] yourParams = new ReportParameter[1];
    yourParams [0] = new ReportParameter("Employe", DropDownList1.SelectedValue);//Adjust value

    this.ReportViewer1.ServerReport.SetParameters(yourParams  );
于 2012-08-29T11:31:53.817 回答