use*_*977 13 c# parameters reportviewer header winforms
HY!我在visual studio 2010中有一个表单应用程序,我想用报表查看器创建一个报表并添加一些参数.我试图从代码中添加参数,但它没有用.我有这个错误:
Tablix"Tablix1"的FilterExpression表达式指的是"datastart"字段.报表项表达式只能引用当前数据集范围内的字段,或者,如果在聚合内,则引用指定的数据集范围.Report2.rdlc:error rsParameterReference:Tablix"Tablix1"的FilterValue表达式是指不存在的报表参数"datastart".
在我的代码中,这样做:
private void SetReportParameters()
{
ReportParameter[] parameters = new ReportParameter[2];
parameters[0] = new ReportParameter("datastart", dateTimePickerStartRaport.Text);
parameters[1] = new ReportParameter("dataStop", dateTimePickerStopRaport.Text);
this.reportViewer1.LocalReport.SetParameters(parameters);
}
Run Code Online (Sandbox Code Playgroud)
并在调用此方法后,在报表查看器上刷新
reportViewer1.RefreshReport();
Run Code Online (Sandbox Code Playgroud)
我也看看其他论坛,我看到我必须在报告中添加参数,但我没有理解我该如何做到这一点.我还试图在报告的属性窗口中添加一些有价值的过滤器
=Parameters!datastart.Value
Run Code Online (Sandbox Code Playgroud)
但这也没有用.
HCL*_*HCL 16
您得到的错误是因为您尝试像字段一样指定参数.在表达式设计器中,您有一个名为"参数"的特殊类别.从那里你可以访问你的参数.语法是=Parameters![FieldName].Value.以你的情况为例=Parameters!datastart.Value.
另外,请注意,参数必须在"参数"下的"报表数据"窗口中声明.它与您用于声明记录集的窗口相同,但是还有一个特殊的参数类别.对于数据类型,还有一些选项,如果参数的规范是必需的.
| 归档时间: |
|
| 查看次数: |
71889 次 |
| 最近记录: |