Crystal 报告第二个子报表导致缺少参数值错误

Crystal report second subreport causes missing parameter values error

我有一份包含两个子报告的 crystal 报告,它会导致调用 ExportToDisk 时出现缺少参数值错误。它与 subreport[0] 一起工作得很好,并且在添加 subreport[1] 之后出现错误。

我在使用子报表时做错了吗[1]?任何建议将不胜感激。

谢谢,

        using (ReportClass rptH = new ReportClass())
        {
            rptH.FileName = "Report.rpt";
            rptH.Load();

            List<SampleDetails> aDetails = new List<SampleDetails> ();
            aDetails = GetADetailsData();
            rptH.SetDataSource(aDetails);

            List<SampleHeader> aHeader = new List<SampleHeader>();
            aHeader = GetAHeaderData();
            rptH.Subreports[0].SetDataSource(aHeader);

            List<SampleData> aFooter = new List<SampleData> ();
            aFooter = GetAFooterData();
            rptH.Subreports[1].SetDataSource(aFooter);

            sPath = "Output.pdf");

            FileStream fs1 = new FileStream(sPath, FileMode.OpenOrCreate, FileAccess.Write);
            fs1.Close();

            rptH.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sPath);
        }
rptH.Subreports[1].SetParameterValue("@your parameter namme", parametervalue);

试试这个。

如果您从数据集中加载子报表,则需要在主报表中设置任何参数之前加载参数。 示例:

reportSOA report = new reportSOA();
report.Subreports["reportSOA_Details.rpt"].Database.Tables["Transactions"].SetDataSource(ListOfTransactions);
report.SetParameterValue("CompanyName", reportCompanyName);

如果你翻转第2行和第3行,你会得到这个错误。 希望这可以节省您的时间