Parameters Reportviewer-在本地模式下提示输入参数?

Parameters Reportviewer-在本地模式下提示输入参数?,parameters,reportviewer,Parameters,Reportviewer,Microsoft ReportViewer控件是否可以在本地模式下提示输入参数 我添加了一个参数来过滤报表,该参数可以是一个参数的多个值 我已将参数的available Values属性设置为从查询中读取值列表 我希望如果我没有在代码中设置参数值,报告会像crystal reports那样提示输入参数值(我正在为参数可用值设置数据源) 我对此做了一些研究,据我所知,报表提示输入参数的唯一时间是报表是否在服务器处理模式下运行 是这样吗?我试图避免向页面添加控件来选择要传递到报表的参数 可用的参数

Microsoft ReportViewer控件是否可以在本地模式下提示输入参数

我添加了一个参数来过滤报表,该参数可以是一个参数的多个值

我已将参数的available Values属性设置为从查询中读取值列表

我希望如果我没有在代码中设置参数值,报告会像crystal reports那样提示输入参数值(我正在为参数可用值设置数据源)

我对此做了一些研究,据我所知,报表提示输入参数的唯一时间是报表是否在服务器处理模式下运行

是这样吗?我试图避免向页面添加控件来选择要传递到报表的参数

可用的参数属性是否与本地报告相关,还是两者都有

为了完整起见,下面是我用来设置报表数据源的代码:

            //Set the report
            Reporting.Common.SetReportEmbeddedResource( this.ReportViewer1, "Reporting.Reports.BudgetEnquiryDrilldown.rdlc" );

            //Set the datasources
            this.ReportViewer1.LocalReport.DataSources.Add(
                new ReportDataSource(
                    "BudgetEnquiry",
                     Reporting.Repositories.BudgetEnquiryDrilldown.GetBudgetEnquiryRecords(
                            base.CurrentSageDatabase,
                            base.CurrentUser.UserID ) ) );

            this.ReportViewer1.LocalReport.DataSources.Add(
                new ReportDataSource(
                    "AccountNumber",
                    Reporting.Repositories.BudgetEnquiryDrilldown.GetAccountNumbers(
                        base.CurrentSageDatabase ) ) );

            this.ReportViewer1.LocalReport.DataSources.Add(
                new ReportDataSource(
                    "CostCentre",
                    Reporting.Repositories.BudgetEnquiryDrilldown.GetCostCentres(
                        base.CurrentSageDatabase ) ) );

            //Refresh the report
            this.ReportViewer1.LocalReport.Refresh();

我不认为可以使用ReportViewer,但是创建一个包含所需参数的新表单并将其传递给报表很容易

看看这个:

Dim params As New List(Of Microsoft.Reporting.WinForms.ReportParameter) ' Add Parameters of type Microsoft.Reporting.Windows.ReportParameter params.Add(New Microsoft.Reporting.WinForms.ReportParameter("Test", "Whatever")) RptViewer.LocalReport.SetParameters(params) Dim参数作为新列表(Microsoft.Reporting.WinForms.ReportParameter的) '添加类型为Microsoft.Reporting.Windows.ReportParameter的参数 添加(新的Microsoft.Reporting.WinForms.ReportParameter(“测试”、“任何”)) RptViewer.LocalReport.SetParameters(参数)
在本例中,param test的值为“whatever”。

我认为您不能使用ReportViewer,但创建一个包含所需参数的新表单并将其传递给报表很容易

看看这个:

Dim params As New List(Of Microsoft.Reporting.WinForms.ReportParameter) ' Add Parameters of type Microsoft.Reporting.Windows.ReportParameter params.Add(New Microsoft.Reporting.WinForms.ReportParameter("Test", "Whatever")) RptViewer.LocalReport.SetParameters(params) Dim参数作为新列表(Microsoft.Reporting.WinForms.ReportParameter的) '添加类型为Microsoft.Reporting.Windows.ReportParameter的参数 添加(新的Microsoft.Reporting.WinForms.ReportParameter(“测试”、“任何”)) RptViewer.LocalReport.SetParameters(参数)
在这种情况下,param test被赋予值“whatever”。

被困在同一个问题上,在谷歌搜索后发现了这个问题

在没有报表服务器的情况下,ReportViewer必须从应用程序获取其数据。在本地模式下,应用程序负责为报表提供必要的输入。这就是为什么ReportViewer不显示带有本地报表的参数提示区。参数和数据在ReportViewer外部

资料来源:


在谷歌搜索后发现了同样的问题

在没有报表服务器的情况下,ReportViewer必须从应用程序获取其数据。在本地模式下,应用程序负责为报表提供必要的输入。这就是为什么ReportViewer不显示带有本地报表的参数提示区。参数和数据在ReportViewer外部

资料来源:


谢谢david,我认为情况就是这样,到目前为止,我对ReportViewer唯一的抱怨是:)我不同意这一点。我真的不喜欢Reporting Services中询问参数的方式,因此我希望能够控制用户查看参数的方式。谢谢david,我认为是这样,到目前为止,我对ReportViewer唯一的抱怨是:)我不同意这一点。我真的不喜欢Reporting Services中询问参数的方式,所以我希望能够控制用户查看参数的方式。谢谢,很遗憾,它不作为标准支持,但嘿,我们不能拥有所有!谢谢,很遗憾,它没有作为标准支持,但嘿,我们不能拥有一切!