【发布时间】:2013-01-22 20:21:23
【问题描述】:
我正在使用 C# 呈现来自 SRSS 2008 R2 的报告 该报告有参数,很长一段时间我在渲染输出时都没有问题。然而今天它决定它不工作了!
这是错误
ReportServerException: This report requires a default or user-defined value for the report parameter 'CustomFieldId'. To run or subscribe to this report, you must provide a parameter value. (rsReportParameterValueNotSet): Stack: at Microsoft.Reporting.WebForms.ServerReportSoapProxy.OnSoapException(SoapException e)
代码如下:
ReportViewer rv = new ReportViewer();
rv.ShowCredentialPrompts = true;
rv.ProcessingMode = ProcessingMode.Remote;
rv.ServerReport.ReportServerUrl = new Uri(ReportsClient.ReportServerUrl);
rv.ServerReport.ReportPath = string.Format("/Reports/{0}", item.Name);
rv.ServerReport.SetParameters(thisLoopParams.ToArray());
rv.ServerReport.Timeout = -1;
rv.ServerReport.Refresh();
// render the report
string mimeType = string.Empty;
string extention = string.Empty;
string encoding = string.Empty;
string[] streamIds;
Microsoft.Reporting.WebForms.Warning[] warnings = null;
byte[] result = rv.ServerReport.Render(outputFormat, deviceInfo, out mimeType, out encoding, out extention, out streamIds, out warnings);
如果我检查thisLoopParams,我可以清楚地看到'CustomFieldId'ReportParameter,它肯定有一个值,但错误仍然出现。
有什么想法吗?
【问题讨论】:
-
尝试打开 rdl 并为该参数添加一个默认值。
-
完成。可悲的是仍然遇到同样的错误