diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
index 35bedf5259..ecd1fe0cb9 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
@@ -174,7 +174,7 @@
-
+
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/ExportRunner.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/ExportRunner.cs
index f951b13cc0..e4c6351c5c 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/ExportRunner.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/ExportRunner.cs
@@ -7,6 +7,7 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
+using System.Data;
using ICSharpCode.Reports.Core.Exporter;
using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.Reports.Core.ReportViewer;
@@ -19,6 +20,7 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
public class ExportRunner:IExportRunner
{
+ public event EventHandler PageCreated;
public ExportRunner()
{
@@ -35,6 +37,7 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
this.RunReport(model, parameters);
}
+
public void RunReport(ReportModel reportModel, ReportParameters parameters)
{
if (reportModel == null) {
@@ -51,7 +54,7 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
}
}
- public void RunReport(ReportModel reportModel, System.Data.DataTable dataTable, ReportParameters parameters)
+ public void RunReport(ReportModel reportModel, DataTable dataTable, ReportParameters parameters)
{
if (reportModel == null) {
throw new ArgumentNullException("reportModel");
@@ -81,7 +84,6 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
}
ReportEngine.CheckForParameters(reportModel, parameters);
IDataManager dataManager = DataManagerFactory.CreateDataManager(reportModel, dataSource);
-
RunReport(reportModel, dataManager);
}
@@ -113,6 +115,10 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
private void OnPageCreated (object sender,PageCreatedEventArgs e)
{
Pages.Add(e.SinglePage);
+ if (PageCreated != null) {
+
+ PageCreated (this,e);
+ }
}
}
}
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/IExpoerRunner.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/IExportRunner.cs
similarity index 93%
rename from src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/IExpoerRunner.cs
rename to src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/IExportRunner.cs
index 8dce8de713..4c4e28badd 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/IExpoerRunner.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/IExportRunner.cs
@@ -15,6 +15,6 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
void RunReport(ReportModel reportModel, IList dataSource, ReportParameters parameters);
void RunReport(ReportModel reportModel, IDataManager dataManager);
PagesCollection Pages { get; }
-// IReportViewerMessages Messages { get; set; }
+ event EventHandler PageCreated;
}
}
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs
index 0cfa0c733f..5225540145 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs
@@ -330,16 +330,16 @@ namespace ICSharpCode.Reports.Core {
/// a Datatable, containing the data
[Obsolete("use public void PreviewPushDataReport (string fileName,DataTable dataTable,null)")]
- public void PreviewPushDataReport (string fileName,DataTable dataTable)
- {
- if (String.IsNullOrEmpty(fileName)) {
- throw new ArgumentNullException("fileName");
- }
- if (dataTable == null) {
- throw new ArgumentNullException("dataTable");
- }
- this.PreviewPushDataReport(fileName,dataTable,null);
- }
+// public void PreviewPushDataReport (string fileName,DataTable dataTable)
+// {
+// if (String.IsNullOrEmpty(fileName)) {
+// throw new ArgumentNullException("fileName");
+// }
+// if (dataTable == null) {
+// throw new ArgumentNullException("dataTable");
+// }
+// this.PreviewPushDataReport(fileName,dataTable,null);
+// }
public void PreviewPushDataReport (string fileName,DataTable dataTable,ReportParameters reportParameters)
@@ -365,16 +365,16 @@ namespace ICSharpCode.Reports.Core {
[Obsolete ("use public void PreviewPushDataReport (string fileName,IList list,null)")]
- public void PreviewPushDataReport (string fileName,IList list)
- {
- if (String.IsNullOrEmpty(fileName)) {
- throw new ArgumentNullException("fileName");
- }
- if (list == null) {
- throw new ArgumentNullException("list");
- }
- this.PreviewPushDataReport(fileName,list,null);
- }
+// public void PreviewPushDataReport (string fileName,IList list)
+// {
+// if (String.IsNullOrEmpty(fileName)) {
+// throw new ArgumentNullException("fileName");
+// }
+// if (list == null) {
+// throw new ArgumentNullException("list");
+// }
+// this.PreviewPushDataReport(fileName,list,null);
+// }
public void PreviewPushDataReport (string fileName,IList list,ReportParameters reportParameters)
@@ -436,7 +436,7 @@ namespace ICSharpCode.Reports.Core {
///
///
- public static IReportCreator CreatePageBuilder (IReportModel reportModel)
+ internal static IReportCreator CreatePageBuilder (IReportModel reportModel)
{
if (reportModel == null) {
throw new ArgumentNullException("reportModel");
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
index 19629412dd..4e8f8e80f0 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
@@ -10,18 +10,16 @@ using System.Drawing.Text;
using System.Globalization;
using System.Windows.Forms;
-using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Exporter;
using ICSharpCode.Reports.Core.Exporter.ExportRenderer;
using ICSharpCode.Reports.Core.Globals;
-using ICSharpCode.Reports.Core.Interfaces;
namespace ICSharpCode.Reports.Core.ReportViewer
{
///
/// Description of UserControl1.
///
- public partial class PreviewControl : IExportRunner
+ public partial class PreviewControl
{
public event EventHandler PreviewLayoutChanged;
@@ -36,7 +34,6 @@ namespace ICSharpCode.Reports.Core.ReportViewer
private delegate void invokeDelegate();
private ReportSettings reportSettings;
- private IDataManager dataManager;
#region Constructor
@@ -90,14 +87,13 @@ namespace ICSharpCode.Reports.Core.ReportViewer
throw new ArgumentNullException("reportModel");
}
this.SetupViewer(reportModel);
-
if (reportModel.DataModel == GlobalEnums.PushPullModel.FormSheet) {
RunFormSheet(reportModel);
} else {
- ReportEngine.CheckForParameters(reportModel, parameters);
- this.dataManager = DataManagerFactory.CreateDataManager(reportModel, parameters);
- RunDataReport(reportModel, dataManager);
+ var dataManager = DataManagerFactory.CreateDataManager(reportModel, parameters);
+ RunReport(reportModel,dataManager);
}
+
}
@@ -109,7 +105,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
if (dataTable == null) {
throw new ArgumentNullException("dataTable");
}
- ReportEngine.CheckForParameters(reportModel, parameters);
+// ReportEngine.CheckForParameters(reportModel, parameters);
IDataManager dataManager = DataManagerFactory.CreateDataManager(reportModel, dataTable);
RunReport(reportModel, dataManager);
@@ -124,9 +120,8 @@ namespace ICSharpCode.Reports.Core.ReportViewer
if (dataSource == null) {
throw new ArgumentNullException("dataSource");
}
- ReportEngine.CheckForParameters(reportModel, parameters);
- IDataManager dataManager = DataManagerFactory.CreateDataManager(reportModel, dataSource);
-
+// ReportEngine.CheckForParameters(reportModel, parameters);
+ var dataManager = DataManagerFactory.CreateDataManager(reportModel, dataSource);
RunReport(reportModel, dataManager);
}
@@ -139,9 +134,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
if (dataManager == null) {
throw new ArgumentNullException("dataManager");
}
-
this.SetupViewer(reportModel);
- this.dataManager = dataManager;
RunDataReport(reportModel, dataManager);
}
@@ -150,24 +143,17 @@ namespace ICSharpCode.Reports.Core.ReportViewer
private void RunFormSheet(ReportModel reportModel)
{
- IReportCreator reportCreator = FormPageBuilder.CreateInstance(reportModel);
- reportCreator.SectionRendering += new EventHandler(PushPrinting);
- reportCreator.PageCreated += OnPageCreated;
- reportCreator.BuildExportList();
+ runner.PageCreated += OnPageCreated;
+ runner.RunReport(reportModel,(ReportParameters)null);
ShowCompleted();
}
private void RunDataReport(ReportModel reportModel, IDataManager data)
{
- IReportCreator reportCreator = DataPageBuilder.CreateInstance(reportModel, data);
- reportCreator.SectionRendering += new EventHandler(PushPrinting);
- reportCreator.GroupHeaderRendering += new EventHandler(GroupHeaderRendering);
- reportCreator.GroupFooterRendering += GroupFooterRendering;
-
- reportCreator.RowRendering += new EventHandler(RowRendering);
- reportCreator.PageCreated += OnPageCreated;
- reportCreator.BuildExportList();
+ runner.PageCreated += OnPageCreated;
+ runner.RunReport(reportModel,data);
+ runner.PageCreated -= OnPageCreated;
ShowCompleted();
}
@@ -176,7 +162,6 @@ namespace ICSharpCode.Reports.Core.ReportViewer
#region Events from worker
-
private void OnPageCreated(object sender, PageCreatedEventArgs e)
{
this.Pages.Add(e.SinglePage);
@@ -272,9 +257,6 @@ namespace ICSharpCode.Reports.Core.ReportViewer
updateControl = ShowCompleted;
Invoke(updateControl);
}
- if (this.dataManager != null) {
- this.dataManager.GetNavigator.Reset();
- }
this.SetPages();
this.CheckEnable();
this.printButton.Enabled = true;
@@ -335,7 +317,6 @@ namespace ICSharpCode.Reports.Core.ReportViewer
this.comboZoom.ToolTipText = this.reportViewerMessages.ZoomMessage;
this.createPdfMenu.Text = this.reportViewerMessages.PdfFileMessage;
this.pdfButton.ToolTipText = this.reportViewerMessages.PdfFileMessage;
-// this.pagesCreatedMessage = this.reportViewerMessages.PagesCreatedMessage;
}
}
@@ -576,6 +557,5 @@ namespace ICSharpCode.Reports.Core.ReportViewer
Localize();
}
}
-
}
}