参数未通过代码正确传递
Parameters not being passed correctly through code
我的报表从存储过程中获取数据。六个参数中的两个是日期(toDate 和 fromDate。)我将报告与 C# Winforms 集成,并通过代码传递参数:
reportDocument.setParamterValue(0,paramValue);
报告工作正常,但尽管正确显示了 header 列,但仍未呈现数据。当我刷新报告时,它再次弹出参数window。当我通过 window 输入参数时,数据显示,包括列 headers。但是当我通过代码传递参数时,它不起作用。
我该如何解决?
我建议首先在c#环境中调用过程并将结果保存在数据表中,然后将数据表发送到crystal报告。
看起来像这样:
CRPT.SetParameterValue("smonth", Servercls.month);
查看此了解更多信息。
我发现了错误。
首先,它无法通过索引设置参数。所以我按照 reds 的建议通过名称设置参数。
其次,我缺少与报表查看器对象绑定的参数。
所以我添加了以下行并且有效
crystalReportViewer.ParameterField.addRange(reportDocument.ParameterFields);
谢谢大家的回答。
我的报表从存储过程中获取数据。六个参数中的两个是日期(toDate 和 fromDate。)我将报告与 C# Winforms 集成,并通过代码传递参数:
reportDocument.setParamterValue(0,paramValue);
报告工作正常,但尽管正确显示了 header 列,但仍未呈现数据。当我刷新报告时,它再次弹出参数window。当我通过 window 输入参数时,数据显示,包括列 headers。但是当我通过代码传递参数时,它不起作用。
我该如何解决?
我建议首先在c#环境中调用过程并将结果保存在数据表中,然后将数据表发送到crystal报告。
看起来像这样:
CRPT.SetParameterValue("smonth", Servercls.month);
查看此
我发现了错误。 首先,它无法通过索引设置参数。所以我按照 reds 的建议通过名称设置参数。 其次,我缺少与报表查看器对象绑定的参数。 所以我添加了以下行并且有效
crystalReportViewer.ParameterField.addRange(reportDocument.ParameterFields);
谢谢大家的回答。