public static void ModifyDocument(XtraReport xtraReport, XtraReport xtraReport2) { // Add all pages of the second report to the end of the first report. xtraReport.ModifyDocument(x => { x.AddPages(xtraReport2.Pages); }); }
private ReportInfo GetReportInfo(ReportInfo reportInfo, DateTime fromDate, DateTime toDate, ref int pageEnd) { int pageStart = pageEnd + 1; object reportSource = GetReportSource(reportInfo.ReportID, fromDate, toDate); XtraReport report = GetReportDocument(reportInfo.ReportID, reportSource, GetReportParam(fromDate, toDate), pageStart); int pageCount = 0; if (report == null) { if (reportInfo.ReportID != ReportTemplate.RPT010) { return(null); } } else { pageCount = report.Pages.Count; pageEnd += pageCount; } if (reportInfo.ReportID == ReportTemplate.RPT010) { reportSource = GetReportSource(ReportTemplate.RPT018, fromDate, toDate); XtraReport report112 = GetReportDocument(ReportTemplate.RPT018, reportSource, GetReportParam(fromDate, toDate), pageEnd + 1); if (report == null) { if (report112 == null) { return(null); } else { pageCount = report112.Pages.Count; pageEnd += pageCount; report = report112; } } else { if (report112 != null) { pageCount += report112.Pages.Count; pageEnd += report112.Pages.Count; report.ModifyDocument(x => { x.AddPages(report112.Pages); }); report.PrintingSystem.ContinuousPageNumbering = false; } } } ReportInfo result = ModelHelper.Clone(reportInfo); result.ReportSource = reportSource; result.Report = report; result.PageStart = pageStart; result.PageCount = pageCount; result.PageEnd = pageEnd; return(result); }