我有一个小的Winforms项目。 .NetFramework 4.5,CR 13.0.14。在ReportForm中:为什么我的CR SetParameterValue看起来不起作用
public partial class ReportForm : Form
{
private readonly string _batchNumber;
public ReportForm(string batchNumber)
{
_batchNumber = batchNumber;
InitializeComponent();
}
protected override void OnLoad(EventArgs e)
{
APGreenSheets report = new APGreenSheets();
DataSet data = AccountsPayableController.FillDataSet();
report.SetDataSource(data);
report.SetParameterValue("BatchRef", _batchNumber);
crystalReportViewer1.ReportSource = report;
crystalReportViewer1.RefreshReport();
base.OnLoad(e);
}
}
在我的CR报告中,我将参数字段“BatchRef”定义为字符串。
我的记录选择公式:{AP_HistoryHeader.strBatchRef} = {?BatchRef}
当ReportForm负载(在批号引用传递)的报告,仍然提示我的时候,才加载。我可以手动输入,这将工作。但是我设置了数据源以避免这种情况后设置了参数。提前致谢。
您是否尝试过在设置ReportSource行后移动Setparameter()代码?它仍然提示吗? 另一个选项可能是检查报告本身..右键单击参数报告 - >编辑 - >在值选项面板下,你会看到几个提示设置..确保它们设置为False。 – aMazing
谢谢@amazing,我检查了我的参数字段,并将它们设置为False。移动SetParameter不会改变行为。不过,我注意到如果我删除了我的选择公式,报告加载时它不会提示我。 – Randy
并且您的记录选择公式在报告中?没有通过代码传递? – aMazing