参数未通过代码正确传递

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);

谢谢大家的回答。