繁体   English   中英

为什么我的CR SetParameterValue似乎不起作用

[英]Why does my CR SetParameterValue seem to not work

我有一个小型Winforms项目。 .NetFramework 4.5,CR 13.0.14。 在ReportForm中:

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时(传递“批号”引用),报告仍会提示我加载之前。 我可以手动输入,它将起作用。 但是在设置数据源以避免这种情况之后,我已经设置了参数。 提前致谢。

经过其他一些代码检查之后,SAP的Don Williams为我提供了正确的答案:

只需删除crystalReportViewer1.RefreshReport();crystalReportViewer1.RefreshReport();

这成功了。 显然刷新部分想要更新传递的参数。 事实证明,我不需要它来首先显示报告。

感谢唐!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM