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行,你会得到这个错误。
希望这可以节省您的时间
我有一份包含两个子报告的 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行,你会得到这个错误。 希望这可以节省您的时间