先上重点
#region 设置多个报表数据源 //此部分代码比较消耗时间!!!
public ReportDocument FillReportData(DataSet Ds, ReportDocument oReport)
{
this.SetData(Ds, oReport);
foreach (ReportDocument oSubReport in oReport.Subreports)
this.SetData(Ds, oSubReport);
return oReport;
}
private void SetData(DataSet Ds, ReportDocument oReport)
{
foreach (Table oTable in oReport.Database.Tables)
oTable.SetDataSource(Ds.Tables[oTable.Name.ToString()]);
}
#endregion
哪位大师、高手能破解下,我这儿测试了下,i5,4G的机器都要7~8秒钟,配置低的机器要更多。。。
水晶报表结构:
主报表:
|
|————封面
|
|————子报表1
|
|————子报表2
|
|————。。。。。。
每个子报表,连接了数据库中的两个表,采用PUSH模式。
多谢!
------解决思路----------------------
先设置一级的Data,然后点树+展开时再动态设置下级的Data
------解决思路----------------------
同上,不要一次加载,即用即取