internal void RunPhase2() { try { Config.ReportSettings.OnStartProgress(Report); PrepareToFirstPass(false); RunReportPages(); ResetLogicalPageNumber(); if (Report.DoublePass && !Report.Aborted) { finalPass = true; PrepareToSecondPass(); RunReportPages(); } } finally { Report.OnFinishReport(EventArgs.Empty); Config.ReportSettings.OnFinishProgress(Report); Report.SetOperation(ReportOperation.None); // limit the prepared pages if (Report.MaxPages > 0) { while (PreparedPages.Count > Report.MaxPages) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } } }
internal bool Run(bool runDialogs, bool append, bool resetDataState, ReportPage page) { date = SystemFake.DateTime.Now; Report.SetOperation(ReportOperation.Running); ResetDesigningFlag(); // don't reset the data state if we run the hyperlink's detail page or refresh a report. // This is necessary to keep data filtering settings alive if (resetDataState) { InitializeData(); } Report.OnStartReport(EventArgs.Empty); try { if (runDialogs && !RunDialogs()) { return(false); } Config.ReportSettings.OnStartProgress(Report); PrepareToFirstPass(append); RunReportPages(page); ResetLogicalPageNumber(); if (Report.DoublePass && !Report.Aborted) { finalPass = true; PrepareToSecondPass(); RunReportPages(page); } } finally { Report.OnFinishReport(EventArgs.Empty); Config.ReportSettings.OnFinishProgress(Report); Report.SetOperation(ReportOperation.None); // limit the prepared pages if (Report.MaxPages > 0) { while (PreparedPages.Count > Report.MaxPages) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } // Limit the prepared pages again because pagesLimit has better priority than Report.MaxPages. if (pagesLimit > 0) { while (PreparedPages.Count > pagesLimit) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } } return(true); }
internal bool Run(bool runDialogs, bool append, bool resetDataState, ReportPage page) { RunPhase1(resetDataState); try { if (runDialogs && !RunDialogs()) { return(false); } Config.ReportSettings.OnStartProgress(Report); PrepareToFirstPass(append); RunReportPages(page); ResetLogicalPageNumber(); if (Report.DoublePass && !Report.Aborted) { finalPass = true; PrepareToSecondPass(); RunReportPages(page); } } finally { RestoreTemplate(); Report.OnFinishReport(EventArgs.Empty); Config.ReportSettings.OnFinishProgress(Report); Report.SetOperation(ReportOperation.None); // limit the prepared pages if (Report.MaxPages > 0) { while (PreparedPages.Count > Report.MaxPages) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } // Limit the prepared pages again because pagesLimit has better priority than Report.MaxPages. if (pagesLimit > 0) { while (PreparedPages.Count > pagesLimit) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } } return(true); }
internal void RunPhase2(int?pagesLimit = null) { if (pagesLimit != null) { this.pagesLimit = pagesLimit.Value; } try { Config.ReportSettings.OnStartProgress(Report); PrepareToFirstPass(false); RunReportPages(); ResetLogicalPageNumber(); if (Report.DoublePass && !Report.Aborted) { finalPass = true; PrepareToSecondPass(); RunReportPages(); } } finally { Report.OnFinishReport(EventArgs.Empty); Config.ReportSettings.OnFinishProgress(Report); Report.SetOperation(ReportOperation.None); // limit the prepared pages if (Report.MaxPages > 0) { while (PreparedPages.Count > Report.MaxPages) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } // Limit the prepared pages again because pagesLimit has better priority than Report.MaxPages. if (pagesLimit > 0) { while (PreparedPages.Count > pagesLimit) { PreparedPages.RemovePage(PreparedPages.Count - 1); } } } }