Browse Source

Modify SqlParameters, adjust NameSpaces

4.1
peterforstmeier 14 years ago
parent
commit
55753768a9
  1. 594
      SharpDevelop.Tests.sln
  2. 2
      samples/SharpDevelopReports/src/ReportSamples.sln
  3. 14
      samples/SharpDevelopReports/src/SharpReportSamples/MainForm.cs
  4. 20
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ExplorerCommands.cs
  5. 15
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ViewCommands.cs
  6. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Designer/TextItemDesigner.cs
  7. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportDesignerView.cs
  8. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs
  9. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportWizard/WizardPanels/ResultPanel.cs
  10. 3
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/DummyEditorDialog.cs
  11. 3
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/TextEditorDialogFixture.cs
  12. 7
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
  13. 38
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Collections/Collections.cs
  14. 33
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ConnectionObject.cs
  15. 20
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataAccess/SqlDataAccess.cs
  16. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataAccess/SqlQueryChecker.cs
  17. 9
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataManager.cs
  18. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/BaseListStrategy.cs
  19. 3
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/CollectionStrategy.cs
  20. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/TableStrategy.cs
  21. 5
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/DefaultTextEditor.cs
  22. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/EditorDialog.Designer.cs
  23. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/EditorDialog.cs
  24. 20
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/ParameterDialog.cs
  25. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/ParametersCollectionEditor.cs
  26. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/ExportRunner.cs
  27. 22
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Factories/ConnectionObjectFactory.cs
  28. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Factories/DataManagerFacrory.cs
  29. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/IStringBasedEditorDialog.cs
  30. 14
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs
  31. 67
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportParameters.cs
  32. 13
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportSettings.cs
  33. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
  34. 20
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/Collections/ParametersCollectionFixture.cs
  35. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/IConnectionDataManagerFixture.cs
  36. 14
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/TableStragy/TableStrategyFixture.cs

594
SharpDevelop.Tests.sln

File diff suppressed because it is too large Load Diff

2
samples/SharpDevelopReports/src/ReportSamples.sln

@ -1,7 +1,7 @@
 
Microsoft Visual Studio Solution File, Format Version 11.00 Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010 # Visual Studio 2010
# SharpDevelop 4.1.0.7014 # SharpDevelop 4.2.0.7716-alpha
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpReportSamples", "SharpReportSamples\SharpReportSamples.csproj", "{BB5D34DA-3561-48B1-894A-46765C2A18C1}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpReportSamples", "SharpReportSamples\SharpReportSamples.csproj", "{BB5D34DA-3561-48B1-894A-46765C2A18C1}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Core", "..\..\..\src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\ICSharpCode.Reports.Core.csproj", "{4B2239FF-8FD6-431D-9D22-1B8049BA6917}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Core", "..\..\..\src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\ICSharpCode.Reports.Core.csproj", "{4B2239FF-8FD6-431D-9D22-1B8049BA6917}"

14
samples/SharpDevelopReports/src/SharpReportSamples/MainForm.cs

@ -110,8 +110,8 @@ namespace SharpReportSamples
ReportParameters parameters = ReportEngine.LoadParameters(reportName); ReportParameters parameters = ReportEngine.LoadParameters(reportName);
if ((parameters != null)&& (parameters.SqlParameters.Count > 0)){ if ((parameters != null)&& (parameters.Parameters.Count > 0)){
parameters.SqlParameters[0].ParameterValue = "I'm the Parameter"; parameters.Parameters[0].ParameterValue = "I'm the Parameter";
} }
this.previewControl1.PreviewLayoutChanged += delegate (object sender, EventArgs e) this.previewControl1.PreviewLayoutChanged += delegate (object sender, EventArgs e)
{ {
@ -127,11 +127,13 @@ namespace SharpReportSamples
{ {
string conOleDbString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\SharpReport_TestReports\TestReports\Nordwind.mdb;Persist Security Info=False"; string conOleDbString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\SharpReport_TestReports\TestReports\Nordwind.mdb;Persist Security Info=False";
ReportParameters parameters = ReportEngine.LoadParameters(reportName); ReportParameters parameters = ReportEngine.LoadParameters(reportName);
ConnectionObject con = ConnectionObject.CreateInstance(conOleDbString, ConnectionObject con = ConnectionObject.CreateInstance(conOleDbString,
System.Data.Common.DbProviderFactories.GetFactory("System.Data.OleDb") ); System.Data.Common.DbProviderFactories.GetFactory("System.Data.OleDb") );
parameters.ConnectionObject = con; parameters.ConnectionObject = con;
parameters.SqlParameters[0].ParameterValue = "Provider Independent";
parameters.Parameters[0].ParameterValue = "Provider Independent";
this.previewControl1.PreviewLayoutChanged += delegate (object sender, EventArgs e) this.previewControl1.PreviewLayoutChanged += delegate (object sender, EventArgs e)
{ {
this.RunProviderIndependent(reportName); this.RunProviderIndependent(reportName);
@ -185,7 +187,7 @@ namespace SharpReportSamples
ReportParameters parameters = ReportEngine.LoadParameters(fileName); ReportParameters parameters = ReportEngine.LoadParameters(fileName);
BasicParameter p1 = parameters.SqlParameters[0]; BasicParameter p1 = parameters.Parameters[0];
p1.ParameterValue ="Value of Parameter"; p1.ParameterValue ="Value of Parameter";
@ -207,7 +209,7 @@ namespace SharpReportSamples
var model = ReportEngine.LoadReportModel(fileName); var model = ReportEngine.LoadReportModel(fileName);
ReportParameters parameters = ReportEngine.LoadParameters(fileName); ReportParameters parameters = ReportEngine.LoadParameters(fileName);
BasicParameter p1 = parameters.SqlParameters[0]; BasicParameter p1 = parameters.Parameters[0];
p1.ParameterValue ="Value of Parameter"; p1.ParameterValue ="Value of Parameter";
@ -227,7 +229,7 @@ namespace SharpReportSamples
var model = ReportEngine.LoadReportModel(fileName); var model = ReportEngine.LoadReportModel(fileName);
ReportParameters parameters = ReportEngine.LoadParameters(fileName); ReportParameters parameters = ReportEngine.LoadParameters(fileName);
BasicParameter p1 = parameters.SqlParameters[0]; BasicParameter p1 = parameters.Parameters[0];
p1.ParameterValue ="Value of Parameter"; p1.ParameterValue ="Value of Parameter";

20
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ExplorerCommands.cs

@ -4,6 +4,7 @@
using System; using System;
using ICSharpCode.Core; using ICSharpCode.Core;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Dialogs;
namespace ICSharpCode.Reports.Addin.Commands namespace ICSharpCode.Reports.Addin.Commands
{ {
@ -47,9 +48,7 @@ namespace ICSharpCode.Reports.Addin.Commands
} }
} }
public class ClearSelectedNodeCommand : AbstractCommand public class ClearSelectedNodeCommand : AbstractCommand
{ {
public override void Run() public override void Run()
@ -68,21 +67,14 @@ namespace ICSharpCode.Reports.Addin.Commands
{ {
ReportExplorerPad pad = this.Owner as ReportExplorerPad; ReportExplorerPad pad = this.Owner as ReportExplorerPad;
if (pad != null) { if (pad != null) {
ParameterCollection par = pad.ReportModel.ReportSettings.ParameterCollection; using (ParameterDialog paramDialog = new ParameterDialog(pad.ReportModel.ReportSettings.SqlParameters)) {
using (ParameterDialog paramDialog = new ParameterDialog(par)) {
paramDialog.ShowDialog(); paramDialog.ShowDialog();
if (paramDialog.DialogResult == System.Windows.Forms.DialogResult.OK) { if (paramDialog.DialogResult == System.Windows.Forms.DialogResult.OK) {
/* foreach (SqlParameter bp in paramDialog.SqlParameterCollection)
foreach (BasicParameter bp in e.Collection as ParameterCollection){
r.ReportModel.ReportSettings.ParameterCollection.Add (bp);
}
*/
foreach (BasicParameter bp in new System.Collections.ArrayList(paramDialog.Collection))
{ {
if (bp.ParameterName != null) if (bp.ParameterName != null)
{ {
pad.ReportModel.ReportSettings.ParameterCollection.Add (bp); pad.ReportModel.ReportSettings.SqlParameters.Add (bp);
} }
} }
pad.RefreshParameters(); pad.RefreshParameters();

15
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/ViewCommands.cs

@ -8,6 +8,7 @@ using System.Windows.Forms;
using ICSharpCode.Core; using ICSharpCode.Core;
using ICSharpCode.Reports.Addin.ReportWizard; using ICSharpCode.Reports.Addin.ReportWizard;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Dialogs;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui; using ICSharpCode.SharpDevelop.Gui;
@ -68,9 +69,17 @@ namespace ICSharpCode.Reports.Addin.Commands
public override void Run() public override void Run()
{ {
if (model.ReportSettings.ParameterCollection != null && model.ReportSettings.ParameterCollection.Count > 0) { if (model.ReportSettings.SqlParameters.Count > 0) {
using (ParameterDialog dlg = new ParameterDialog(model.ReportSettings.ParameterCollection)){ using (ParameterDialog paramDialog = new ParameterDialog(model.ReportSettings.SqlParameters))
dlg.ShowDialog(); {
paramDialog.ShowDialog();
if (paramDialog.DialogResult == System.Windows.Forms.DialogResult.OK) {
foreach (SqlParameter bp in paramDialog.SqlParameterCollection)
{
var p = model.ReportSettings.SqlParameters.Find (bp.ParameterName);
p.ParameterValue = bp.ParameterValue;
}
}
} }
} }
} }

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Designer/TextItemDesigner.cs

@ -8,6 +8,8 @@ using System.Windows.Forms;
using System.Windows.Forms.Design; using System.Windows.Forms.Design;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Dialogs;
using ICSharpCode.Reports.Core.Interfaces;
namespace ICSharpCode.Reports.Addin.Designer namespace ICSharpCode.Reports.Addin.Designer
{ {

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportDesignerView.cs

@ -19,6 +19,7 @@ using ICSharpCode.Reports.Addin.SecondaryViews;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Exporter; using ICSharpCode.Reports.Core.Exporter;
using ICSharpCode.Reports.Core.Exporter.ExportRenderer; using ICSharpCode.Reports.Core.Exporter.ExportRenderer;
using ICSharpCode.Reports.Core.Factories;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui; using ICSharpCode.SharpDevelop.Gui;

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs

@ -9,6 +9,7 @@ using ICSharpCode.Reports.Addin.Dialogs;
using ICSharpCode.Reports.Addin.TypeProviders; using ICSharpCode.Reports.Addin.TypeProviders;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.BaseClasses.Printing; using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Dialogs;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
namespace ICSharpCode.Reports.Addin namespace ICSharpCode.Reports.Addin

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportWizard/WizardPanels/ResultPanel.cs

@ -16,6 +16,7 @@ using ICSharpCode.Data.Core.Enums;
using ICSharpCode.Data.Core.Interfaces; using ICSharpCode.Data.Core.Interfaces;
using ICSharpCode.Reports.Addin.Commands; using ICSharpCode.Reports.Addin.Commands;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.DataAccess;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.Reports.Core.Project.BaseClasses; using ICSharpCode.Reports.Core.Project.BaseClasses;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;

3
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/DummyEditorDialog.cs

@ -3,8 +3,9 @@
using System; using System;
using System.Windows.Forms; using System.Windows.Forms;
using NUnit.Framework;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Interfaces;
using NUnit.Framework;
namespace ICSharpCode.Reports.Addin.Test.Dialogs namespace ICSharpCode.Reports.Addin.Test.Dialogs
{ {

3
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/TextEditorDialogFixture.cs

@ -2,8 +2,9 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using NUnit.Framework;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Interfaces;
using NUnit.Framework;
namespace ICSharpCode.Reports.Addin.Test.Dialogs namespace ICSharpCode.Reports.Addin.Test.Dialogs
{ {

7
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj

@ -134,8 +134,9 @@
<Compile Include="Project\DataManager\Comparer\BaseComparer.cs" /> <Compile Include="Project\DataManager\Comparer\BaseComparer.cs" />
<Compile Include="Project\DataManager\Comparer\GroupSeparator.cs" /> <Compile Include="Project\DataManager\Comparer\GroupSeparator.cs" />
<Compile Include="Project\DataManager\Comparer\SortComparer.cs" /> <Compile Include="Project\DataManager\Comparer\SortComparer.cs" />
<Compile Include="Project\DataManager\DataAccess\SqlDataAccess.cs" />
<Compile Include="Project\DataManager\DataAccess\SqlQueryChecker.cs" />
<Compile Include="Project\DataManager\ListStrategy\TableStrategy.cs" /> <Compile Include="Project\DataManager\ListStrategy\TableStrategy.cs" />
<Compile Include="Project\DataManager\SqlDataAccess.cs" />
<Compile Include="Project\DataManager\ListHandling\IndexList.cs" /> <Compile Include="Project\DataManager\ListHandling\IndexList.cs" />
<Compile Include="Project\DataManager\ListHandling\ExtendedPropertyDescriptor.cs" /> <Compile Include="Project\DataManager\ListHandling\ExtendedPropertyDescriptor.cs" />
<Compile Include="Project\DataManager\ListHandling\ExtendedTypeDescriptor.cs" /> <Compile Include="Project\DataManager\ListHandling\ExtendedTypeDescriptor.cs" />
@ -148,7 +149,6 @@
</Compile> </Compile>
<Compile Include="Project\Dialogs\EditorDialog.Designer.cs" /> <Compile Include="Project\Dialogs\EditorDialog.Designer.cs" />
<Compile Include="Project\Dialogs\GroupingCollectionEditor.cs" /> <Compile Include="Project\Dialogs\GroupingCollectionEditor.cs" />
<Compile Include="Project\Dialogs\IStringBasedEditorDialog.cs" />
<Compile Include="Project\Dialogs\ParametersCollectionEditor.cs" /> <Compile Include="Project\Dialogs\ParametersCollectionEditor.cs" />
<Compile Include="Project\Dialogs\ParameterDialog.cs"> <Compile Include="Project\Dialogs\ParameterDialog.cs">
<SubType>Form</SubType> <SubType>Form</SubType>
@ -301,6 +301,7 @@
<Compile Include="Project\Interfaces\IReportItem.cs" /> <Compile Include="Project\Interfaces\IReportItem.cs" />
<Compile Include="Project\Interfaces\IReportModel.cs" /> <Compile Include="Project\Interfaces\IReportModel.cs" />
<Compile Include="Project\Interfaces\ISinglePage.cs" /> <Compile Include="Project\Interfaces\ISinglePage.cs" />
<Compile Include="Project\Interfaces\IStringBasedEditorDialog.cs" />
<Compile Include="Project\IReportCreator.cs" /> <Compile Include="Project\IReportCreator.cs" />
<Compile Include="Project\Printing\Graphics\BaseLine.cs" /> <Compile Include="Project\Printing\Graphics\BaseLine.cs" />
<Compile Include="Project\Printing\Graphics\BaseShape.cs" /> <Compile Include="Project\Printing\Graphics\BaseShape.cs" />
@ -335,7 +336,6 @@
<Compile Include="Project\BaseClasses\BasicParameter.cs" /> <Compile Include="Project\BaseClasses\BasicParameter.cs" />
<Compile Include="Project\BaseClasses\SqlParameter.cs" /> <Compile Include="Project\BaseClasses\SqlParameter.cs" />
<Compile Include="Project\Collections\Collections.cs" /> <Compile Include="Project\Collections\Collections.cs" />
<Compile Include="Project\DataManager\SqlQueryChecker.cs" />
<Compile Include="Project\Exceptions\MissingModelException.cs" /> <Compile Include="Project\Exceptions\MissingModelException.cs" />
<Compile Include="Project\BaseItems\BaseRowItem.cs" /> <Compile Include="Project\BaseItems\BaseRowItem.cs" />
<Compile Include="Project\Interfaces\IContainerItem.cs" /> <Compile Include="Project\Interfaces\IContainerItem.cs" />
@ -398,6 +398,7 @@
<None Include="Project\ReportViewer\Resources\Icons\Next.bmp" /> <None Include="Project\ReportViewer\Resources\Icons\Next.bmp" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Folder Include="Project\DataManager\DataAccess" />
<Folder Include="Project\WpfReportViewer" /> <Folder Include="Project\WpfReportViewer" />
<Folder Include="Project\WPF" /> <Folder Include="Project\WPF" />
</ItemGroup> </ItemGroup>

38
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Collections/Collections.cs

@ -308,6 +308,34 @@ namespace ICSharpCode.Reports.Core{
} }
public class SqlParameterCollection : Collection<SqlParameter>
{
public SqlParameterCollection()
{
}
public SqlParameter Find (string parameterName)
{
if (String.IsNullOrEmpty(parameterName)) {
throw new ArgumentNullException("parameterName");
}
return this.FirstOrDefault(x => 0 == String.Compare(x.ParameterName,parameterName,true,CultureInfo.InvariantCulture));
}
public void AddRange (IEnumerable<SqlParameter> items)
{
foreach (SqlParameter item in items){
this.Add(item);
}
}
public static CultureInfo Culture
{
get { return System.Globalization.CultureInfo.CurrentCulture; }
}
}
public class ParameterCollection: Collection<BasicParameter>{ public class ParameterCollection: Collection<BasicParameter>{
@ -321,7 +349,6 @@ namespace ICSharpCode.Reports.Core{
if (String.IsNullOrEmpty(parameterName)) { if (String.IsNullOrEmpty(parameterName)) {
throw new ArgumentNullException("parameterName"); throw new ArgumentNullException("parameterName");
} }
return this.FirstOrDefault(x => 0 == String.Compare(x.ParameterName,parameterName,true,CultureInfo.InvariantCulture)); return this.FirstOrDefault(x => 0 == String.Compare(x.ParameterName,parameterName,true,CultureInfo.InvariantCulture));
} }
@ -335,15 +362,6 @@ namespace ICSharpCode.Reports.Core{
return ht; return ht;
} }
public System.Collections.Generic.List<SqlParameter> ExtractSqlParameters ()
{
System.Collections.Generic.List<SqlParameter> sql = new List<SqlParameter>();
sql = (from t in this where t is SqlParameter select (SqlParameter)t).ToList<SqlParameter>();
return sql;
}
public static CultureInfo Culture public static CultureInfo Culture
{ {
get { return System.Globalization.CultureInfo.CurrentCulture; } get { return System.Globalization.CultureInfo.CurrentCulture; }

33
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ConnectionObject.cs

@ -13,9 +13,19 @@ using System.Data.Common;
/// created on - 17.10.2005 22:59:39 /// created on - 17.10.2005 22:59:39
/// </remarks> /// </remarks>
namespace ICSharpCode.Reports.Core { namespace ICSharpCode.Reports.Core
{
public class ConnectionObject : object,IDisposable { public interface IConnectionObject
{
IDbDataAdapter CreateDataAdapter(IDbCommand command);
string QueryString { get; set; }
IDbConnection Connection { get; }
DbProviderFactory ProviderFactory { get; }
}
public class ConnectionObject :IConnectionObject, IDisposable {
IDbConnection connection; IDbConnection connection;
DbProviderFactory providerFactory; DbProviderFactory providerFactory;
@ -33,27 +43,12 @@ namespace ICSharpCode.Reports.Core {
IDbConnection con = providerFactory.CreateConnection(); IDbConnection con = providerFactory.CreateConnection();
con.ConnectionString = connectionString; con.ConnectionString = connectionString;
return ConnectionObject.CreateInstance(con,providerFactory);
}
public static ConnectionObject CreateInstance (IDbConnection connection,
DbProviderFactory providerFactory)
{
if (connection == null) {
throw new ArgumentNullException("connection");
}
if (providerFactory == null) {
throw new ArgumentNullException("providerFactory");
}
ConnectionObject instance = new ConnectionObject (); ConnectionObject instance = new ConnectionObject ();
instance.connection = connection; instance.connection = con;
instance.providerFactory = providerFactory; instance.providerFactory = providerFactory;
return instance; return instance;
} }
private ConnectionObject () { private ConnectionObject () {

20
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/SqlDataAccess.cs → src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataAccess/SqlDataAccess.cs

@ -5,9 +5,10 @@ using System;
using System.Data; using System.Data;
using System.Globalization; using System.Globalization;
using ICSharpCode.Reports.Core.Factories;
using ICSharpCode.Reports.Core.Project.Interfaces; using ICSharpCode.Reports.Core.Project.Interfaces;
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.DataAccess
{ {
/// <summary> /// <summary>
/// Description of DataAccess. /// Description of DataAccess.
@ -26,7 +27,7 @@ namespace ICSharpCode.Reports.Core
} }
this.reportSettings = reportSettings; this.reportSettings = reportSettings;
if (connectionObject == null) { if (connectionObject == null) {
this.connectionObject = ConnectionObjectFactory.BuildConnectionObject(reportSettings.ConnectionString); this.connectionObject = ConnectionObjectFactory.BuildConnectionObject(reportSettings);
} else { } else {
this.connectionObject = connectionObject; this.connectionObject = connectionObject;
} }
@ -40,7 +41,6 @@ namespace ICSharpCode.Reports.Core
} }
private void CheckConnection() private void CheckConnection()
{ {
if (this.connectionObject.Connection.State == ConnectionState.Open) { if (this.connectionObject.Connection.State == ConnectionState.Open) {
@ -50,7 +50,6 @@ namespace ICSharpCode.Reports.Core
} }
public DataSet ReadData() public DataSet ReadData()
{ {
try { try {
@ -70,8 +69,7 @@ namespace ICSharpCode.Reports.Core
// We have to check if there are parameters for this Query, if so // We have to check if there are parameters for this Query, if so
// add them to the command // add them to the command
BuildQueryParameters(command,reportSettings.ParameterCollection); BuildQueryParameters(command,reportSettings.SqlParameters);
IDbDataAdapter adapter = connectionObject.CreateDataAdapter(command); IDbDataAdapter adapter = connectionObject.CreateDataAdapter(command);
DataSet ds = new DataSet(); DataSet ds = new DataSet();
ds.Locale = CultureInfo.CurrentCulture; ds.Locale = CultureInfo.CurrentCulture;
@ -87,17 +85,17 @@ namespace ICSharpCode.Reports.Core
private static void BuildQueryParameters (IDbCommand cmd, private static void BuildQueryParameters (IDbCommand cmd,
ParameterCollection parameterCollection) SqlParameterCollection parameterCollection)
{ {
if (parameterCollection != null && parameterCollection.Count > 0) { if (parameterCollection != null && parameterCollection.Count > 0) {
IDbDataParameter cmdPar = null; IDbDataParameter cmdPar = null;
System.Collections.Generic.List<SqlParameter> sq = parameterCollection.ExtractSqlParameters();
foreach (SqlParameter par in parameterCollection) {
foreach (SqlParameter par in sq) {
cmdPar = cmd.CreateParameter(); cmdPar = cmd.CreateParameter();
cmdPar.ParameterName = par.ParameterName; cmdPar.ParameterName = par.ParameterName;
Console.WriteLine("");
Console.WriteLine("BuildQueryParameters {0} - {1}",par.ParameterName,par.ParameterValue);
if (par.DataType != System.Data.DbType.Binary) { if (par.DataType != System.Data.DbType.Binary) {
cmdPar.DbType = par.DataType; cmdPar.DbType = par.DataType;
cmdPar.Value = par.ParameterValue; cmdPar.Value = par.ParameterValue;

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/SqlQueryChecker.cs → src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataAccess/SqlQueryChecker.cs

@ -5,7 +5,7 @@ using System;
using System.Data; using System.Data;
using System.Globalization; using System.Globalization;
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.DataAccess
{ {
/// <summary> /// <summary>
/// This Class checks for invalid SqlStatements /// This Class checks for invalid SqlStatements

9
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataManager.cs

@ -5,9 +5,10 @@ using System;
using System.Collections; using System.Collections;
using System.ComponentModel; using System.ComponentModel;
using System.Data; using System.Data;
using System.Globalization;
using ICSharpCode.Reports.Core.DataAccess;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.Reports.Core.ListStrategy;
using ICSharpCode.Reports.Core.Project.Interfaces; using ICSharpCode.Reports.Core.Project.Interfaces;
/// <summary> /// <summary>
@ -17,12 +18,12 @@ using ICSharpCode.Reports.Core.Project.Interfaces;
/// created by - Forstmeier Peter /// created by - Forstmeier Peter
/// created on - 16.10.2005 14:49:43 /// created on - 16.10.2005 14:49:43
/// </remarks> /// </remarks>
namespace ICSharpCode.Reports.Core { namespace ICSharpCode.Reports.Core
{
public interface IDataManager public interface IDataManager
{ {
DataNavigator GetNavigator DataNavigator GetNavigator {get;}
{get;}
} }

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/BaseListStrategy.cs

@ -18,9 +18,9 @@ using ICSharpCode.Reports.Expressions.ReportingLanguage;
/// created on - 13.11.2005 15:26:02 /// created on - 13.11.2005 15:26:02
/// </remarks> /// </remarks>
namespace ICSharpCode.Reports.Core { namespace ICSharpCode.Reports.Core.ListStrategy
{
internal static class SortExtension internal static class SortExtension
{ {

3
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/CollectionStrategy.cs

@ -15,7 +15,8 @@ using SimpleExpressionEvaluator.Utilities;
/// Access to Data is allway's done by using the 'IndexList' /// Access to Data is allway's done by using the 'IndexList'
/// </summary> /// </summary>
namespace ICSharpCode.Reports.Core { namespace ICSharpCode.Reports.Core.ListStrategy
{
internal sealed class CollectionStrategy : BaseListStrategy { internal sealed class CollectionStrategy : BaseListStrategy {

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ListStrategy/TableStrategy.cs

@ -7,7 +7,7 @@ using System.Data;
using ICSharpCode.Reports.Expressions.ReportingLanguage; using ICSharpCode.Reports.Expressions.ReportingLanguage;
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.ListStrategy
{ {
/// <summary> /// <summary>
/// Description of TableStrategy. /// Description of TableStrategy.

5
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/DefaultTextEditor.cs

@ -6,7 +6,10 @@ using System.ComponentModel;
using System.Drawing.Design; using System.Drawing.Design;
using System.Windows.Forms; using System.Windows.Forms;
namespace ICSharpCode.Reports.Core using ICSharpCode.Reports.Core.Dialogs;
using ICSharpCode.Reports.Core.Interfaces;
namespace ICSharpCode.Reports.Core.Dialogs
{ {
/// <summary> /// <summary>
/// Description of UISettingsEditor. /// Description of UISettingsEditor.

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/EditorDialog.Designer.cs generated

@ -1,7 +1,7 @@
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) // Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.Dialogs
{ {
partial class TextEditorDialog partial class TextEditorDialog
{ {

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/EditorDialog.cs

@ -5,7 +5,9 @@ using System;
using System.Drawing; using System.Drawing;
using System.Windows.Forms; using System.Windows.Forms;
namespace ICSharpCode.Reports.Core using ICSharpCode.Reports.Core.Interfaces;
namespace ICSharpCode.Reports.Core.Dialogs
{ {
/// <summary> /// <summary>
/// Description of EditorDialog. /// Description of EditorDialog.

20
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/ParameterDialog.cs

@ -2,31 +2,29 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using System.Collections;
using ICSharpCode.Reports.Core;
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.Dialogs
{ {
public class ParameterDialog : System.Windows.Forms.Form public class ParameterDialog : System.Windows.Forms.Form
{ {
private ParameterCollection collection; private SqlParameterCollection collection;
public ParameterDialog(ParameterCollection collection):this() public ParameterDialog(SqlParameterCollection collection)
{ {
InitializeComponent();
this.collection = collection; this.collection = collection;
this.dataGrid1.DataSource = this.collection; this.dataGrid1.DataSource = this.collection;
} }
public ParameterDialog()
{
InitializeComponent();
}
public ParameterCollection Collection { public SqlParameterCollection SqlParameterCollection {
get { return collection; } get {
return this.collection;
}
} }
#region Designer generated #region Designer generated
/// <summary> /// <summary>

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/ParametersCollectionEditor.cs

@ -29,6 +29,12 @@ namespace ICSharpCode.Reports.Core.Dialogs
if (itemType == typeof(SqlParameter)) { if (itemType == typeof(SqlParameter)) {
return new SqlParameter(); return new SqlParameter();
} }
if (itemType == typeof(BasicParameter)) {
return new BasicParameter();
}
return base.CreateInstance(itemType); return base.CreateInstance(itemType);
} }

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportRenderer/ExportRunner.cs

@ -8,9 +8,7 @@
*/ */
using System; using System;
using System.Data; using System.Data;
using ICSharpCode.Reports.Core.Exporter;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.Reports.Core.ReportViewer;
namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
{ {
@ -86,6 +84,7 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
RunReport(reportModel, dataManager); RunReport(reportModel, dataManager);
} }
public void RunReport(ReportModel reportModel, IDataManager dataManager) public void RunReport(ReportModel reportModel, IDataManager dataManager)
{ {
if (reportModel == null) { if (reportModel == null) {
@ -110,6 +109,7 @@ namespace ICSharpCode.Reports.Core.Exporter.ExportRenderer
void BuildExportList(IReportCreator reportCreator) void BuildExportList(IReportCreator reportCreator)
{ {
Pages.Clear();
reportCreator.PageCreated += OnPageCreated; reportCreator.PageCreated += OnPageCreated;
reportCreator.BuildExportList(); reportCreator.BuildExportList();
reportCreator.PageCreated -= OnPageCreated; reportCreator.PageCreated -= OnPageCreated;

22
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Factories/ConnectionObjectFactory.cs

@ -4,7 +4,7 @@
using System; using System;
using System.Data.Common; using System.Data.Common;
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.Factories
{ {
/// <summary> /// <summary>
/// This Class is a FactoryClass for <see cref="ConnectionObject"></see> /// This Class is a FactoryClass for <see cref="ConnectionObject"></see>
@ -23,25 +23,5 @@ namespace ICSharpCode.Reports.Core
return ConnectionObject.CreateInstance(reportSettings.ConnectionString, return ConnectionObject.CreateInstance(reportSettings.ConnectionString,
DbProviderFactories.GetFactory("System.Data.OleDb")); DbProviderFactories.GetFactory("System.Data.OleDb"));
} }
public static ConnectionObject BuildConnectionObject (string connectionString)
{
if (String.IsNullOrEmpty(connectionString)) {
throw new ArgumentNullException("connectionString");
}
return ConnectionObject.CreateInstance(connectionString,
DbProviderFactories.GetFactory("System.Data.OleDb"));
}
public static ConnectionObject BuildConnectionObject (ReportParameters reportParameters)
{
if (reportParameters == null) {
throw new ArgumentNullException("reportParameters");
}
return reportParameters.ConnectionObject;
}
} }
} }

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Factories/DataManagerFacrory.cs

@ -5,6 +5,7 @@ using System;
using System.Collections; using System.Collections;
using System.Data; using System.Data;
using ICSharpCode.Reports.Core.DataAccess;
using ICSharpCode.Reports.Core.Interfaces; using ICSharpCode.Reports.Core.Interfaces;
using ICSharpCode.Reports.Core.Project.Interfaces; using ICSharpCode.Reports.Core.Project.Interfaces;

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/IStringBasedEditorDialog.cs → src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/IStringBasedEditorDialog.cs

@ -10,7 +10,7 @@
using System; using System;
using System.Windows.Forms; using System.Windows.Forms;
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core.Interfaces
{ {
/// <summary> /// <summary>
/// Description of EditorDialog. /// Description of EditorDialog.

14
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs

@ -9,8 +9,8 @@ using System.IO;
using System.Windows.Forms; using System.Windows.Forms;
using System.Xml; using System.Xml;
using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Exporter; using ICSharpCode.Reports.Core.Exporter;
using ICSharpCode.Reports.Core.Factories;
using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.Reports.Core.Interfaces; using ICSharpCode.Reports.Core.Interfaces;
@ -58,7 +58,7 @@ namespace ICSharpCode.Reports.Core {
} }
if (!String.IsNullOrEmpty(settings.ConnectionString)) { if (!String.IsNullOrEmpty(settings.ConnectionString)) {
conObj = ConnectionObjectFactory.BuildConnectionObject(settings.ConnectionString); conObj = ConnectionObjectFactory.BuildConnectionObject(settings);
} }
return conObj; return conObj;
} }
@ -102,15 +102,15 @@ namespace ICSharpCode.Reports.Core {
model.ReportSettings.SortColumnsCollection.AddRange(reportParameters.SortColumnCollection); model.ReportSettings.SortColumnsCollection.AddRange(reportParameters.SortColumnCollection);
} }
if (reportParameters.SqlParameters.Count > 0) { if (reportParameters.Parameters.Count > 0) {
foreach (BasicParameter bp in reportParameters.SqlParameters) { foreach (BasicParameter bp in reportParameters.Parameters) {
BasicParameter p = model.ReportSettings.ParameterCollection.Find(bp.ParameterName); BasicParameter p = model.ReportSettings.ParameterCollection.Find(bp.ParameterName);
Console.WriteLine("CheckForParameters {0} - {1}",p.ParameterName,p.ParameterValue);
if (p != null) { if (p != null) {
p.ParameterValue = bp.ParameterValue; p.ParameterValue = bp.ParameterValue;
} }
} }
} }
} }
} }
@ -237,9 +237,7 @@ namespace ICSharpCode.Reports.Core {
try { try {
model = LoadReportModel (fileName); model = LoadReportModel (fileName);
ReportParameters pars = new ReportParameters(); ReportParameters pars = new ReportParameters();
pars.ConnectionObject = null; pars.Parameters.AddRange (model.ReportSettings.ParameterCollection);
pars.SqlParameters.AddRange (model.ReportSettings.ParameterCollection);
return pars; return pars;
} catch (Exception) { } catch (Exception) {
throw; throw;

67
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportParameters.cs

@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.Reports.Core.Interfaces;
/// <summary> /// <summary>
/// This Class holds all the Paramters needed to customize a Report /// This Class holds all the Paramters needed to customize a Report
@ -11,49 +12,54 @@ using System;
/// created by - Forstmeier Peter /// created by - Forstmeier Peter
/// created on - 17.11.2005 22:41:26 /// created on - 17.11.2005 22:41:26
/// </remarks> /// </remarks>
namespace ICSharpCode.Reports.Core namespace ICSharpCode.Reports.Core
{ {
public class ReportParameters public interface IReportParameters
{ {
ConnectionObject ConnectionObject { get; set; }
private ConnectionObject connectionObject; SqlParameterCollection SqlParameters { get; }
private ParameterCollection sqlParameters; ParameterCollection Parameters { get; }
SortColumnCollection SortColumnCollection { get; }
}
public class ReportParameters : IReportParameters
{
private ParameterCollection parameters;
private SqlParameterCollection sqlParameters;
private SortColumnCollection sortColumnCollection; private SortColumnCollection sortColumnCollection;
public ReportParameters()
public ReportParameters()
{
}
public ReportParameters(ConnectionObject connectionObject)
{ {
this.connectionObject = connectionObject;
} }
public ConnectionObject ConnectionObject
{ public ConnectionObject ConnectionObject { get; set; }
public SqlParameterCollection SqlParameters {
get { get {
return connectionObject; if (this.sqlParameters == null) {
} this.sqlParameters = new SqlParameterCollection();
set { }
connectionObject = value; return sqlParameters;
} }
} }
public ParameterCollection SqlParameters
{ public ParameterCollection Parameters {
get { get {
if (this.sqlParameters == null) { if (this.parameters == null) {
this.sqlParameters = new ParameterCollection(); this.parameters = new ParameterCollection();
} }
return sqlParameters; return parameters;
} }
} }
public SortColumnCollection SortColumnCollection
{ public SortColumnCollection SortColumnCollection {
get { get {
if (this.sortColumnCollection == null) { if (this.sortColumnCollection == null) {
this.sortColumnCollection = new SortColumnCollection(); this.sortColumnCollection = new SortColumnCollection();
@ -61,6 +67,5 @@ namespace ICSharpCode.Reports.Core
return sortColumnCollection; return sortColumnCollection;
} }
} }
} }
} }

13
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportSettings.cs

@ -44,7 +44,8 @@ namespace ICSharpCode.Reports.Core{
private string reportName; private string reportName;
private string fileName; private string fileName;
private SqlParameterCollection sqlParameters;
private ParameterCollection parameterCollection; private ParameterCollection parameterCollection;
private AvailableFieldsCollection availableFields; private AvailableFieldsCollection availableFields;
private GroupColumnCollection groupingsCollection; private GroupColumnCollection groupingsCollection;
@ -104,6 +105,7 @@ namespace ICSharpCode.Reports.Core{
this.availableFields = new AvailableFieldsCollection(); this.availableFields = new AvailableFieldsCollection();
this.groupingsCollection = new GroupColumnCollection(); this.groupingsCollection = new GroupColumnCollection();
this.sortingCollection = new SortColumnCollection(); this.sortingCollection = new SortColumnCollection();
this.sqlParameters = new SqlParameterCollection();
this.parameterCollection = new ParameterCollection(); this.parameterCollection = new ParameterCollection();
this.NoDataMessage = "No Data for this Report"; this.NoDataMessage = "No Data for this Report";
} }
@ -249,6 +251,15 @@ namespace ICSharpCode.Reports.Core{
get{return parameterCollection;} get{return parameterCollection;}
} }
[Category("Parameters")]
[EditorAttribute ( typeof(ParameterCollectionEditor),
typeof(System.Drawing.Design.UITypeEditor) )]
public SqlParameterCollection SqlParameters
{
get { return sqlParameters; }
}
#endregion #endregion
#region DataRelated #region DataRelated

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs

@ -87,7 +87,9 @@ namespace ICSharpCode.Reports.Core.ReportViewer
RunFormSheet(reportModel); RunFormSheet(reportModel);
} else { } else {
var dataManager = DataManagerFactory.CreateDataManager(reportModel, parameters); var dataManager = DataManagerFactory.CreateDataManager(reportModel, parameters);
ReportEngine.CheckForParameters(reportModel, parameters);
RunReport(reportModel,dataManager); RunReport(reportModel,dataManager);
} }
} }

20
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/Collections/ParametersCollectionFixture.cs

@ -109,26 +109,6 @@ namespace ICSharpCode.Reports.Core.Test.Basics
Assert.AreEqual(System.Data.DbType.String,bp.DataType); Assert.AreEqual(System.Data.DbType.String,bp.DataType);
} }
[Test]
public void ExtractAllSqlParameters ()
{
ParameterCollection p = this.CollectionWithSQLParameters();
p.Add(new SqlParameter ("sql",System.Data.DbType.String,"SqlParameter2"));
System.Collections.Generic.List<SqlParameter> pp = p.ExtractSqlParameters();
Assert.IsNotNull(pp);
Assert.AreEqual(2,pp.Count);
SqlParameter p1 = pp[0];
//p.Add(new SqlParameter ("p2",System.Data.DbType.String,"Parameter2"));
Assert.AreEqual("p2",p1.ParameterName);
Assert.AreEqual("Parameter2",p1.ParameterValue);
Assert.AreEqual(System.Data.DbType.String,p1.DataType);
// p.Add(new SqlParameter ("sql",System.Data.DbType.String,"SqlParameter2"));
SqlParameter p2 = pp[1];
Assert.AreEqual("sql",p2.ParameterName);
Assert.AreEqual("SqlParameter2",p2.ParameterValue);
Assert.AreEqual(System.Data.DbType.String,p2.DataType);
}
#endregion #endregion
[Test] [Test]

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/IConnectionDataManagerFixture.cs

@ -3,6 +3,7 @@
using System; using System;
using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.DataAccess;
using ICSharpCode.Reports.Core.Project.Interfaces; using ICSharpCode.Reports.Core.Project.Interfaces;
using ICSharpCode.Reports.Core.Test.TestHelpers; using ICSharpCode.Reports.Core.Test.TestHelpers;
using NUnit.Framework; using NUnit.Framework;

14
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/TableStragy/TableStrategyFixture.cs

@ -19,7 +19,7 @@ namespace ICSharpCode.Reports.Core.Test.DataManager.TableStrategy
[Test] [Test]
public void TableStrategy_CanInit() public void TableStrategy_CanInit()
{ {
var ts = new ICSharpCode.Reports.Core.TableStrategy(this.table,new ReportSettings()); var ts = new ICSharpCode.Reports.Core.ListStrategy.TableStrategy(this.table,new ReportSettings());
Assert.That(ts != null); Assert.That(ts != null);
} }
@ -30,7 +30,7 @@ namespace ICSharpCode.Reports.Core.Test.DataManager.TableStrategy
public void CanGroup_All_Elements_are_GroupComparer () public void CanGroup_All_Elements_are_GroupComparer ()
{ {
GroupColumn groupComparer = new GroupColumn("GroupItem",1,ListSortDirection.Ascending); GroupColumn groupComparer = new GroupColumn("GroupItem",1,ListSortDirection.Ascending);
ICSharpCode.Reports.Core.TableStrategy tableStrategy = GroupTableStrategyFactory (groupComparer); ICSharpCode.Reports.Core.ListStrategy.TableStrategy tableStrategy = GroupTableStrategyFactory (groupComparer);
tableStrategy.Bind(); tableStrategy.Bind();
foreach (BaseComparer element in tableStrategy.IndexList) foreach (BaseComparer element in tableStrategy.IndexList)
{ {
@ -120,7 +120,7 @@ namespace ICSharpCode.Reports.Core.Test.DataManager.TableStrategy
reportSettings.SortColumnsCollection.Add(sc); reportSettings.SortColumnsCollection.Add(sc);
reportSettings.SortColumnsCollection.Add(sc1); reportSettings.SortColumnsCollection.Add(sc1);
var tableStrategy = new ICSharpCode.Reports.Core.TableStrategy(this.table,reportSettings); var tableStrategy = new ICSharpCode.Reports.Core.ListStrategy.TableStrategy(this.table,reportSettings);
string v1 = String.Empty; string v1 = String.Empty;
foreach (BaseComparer element in tableStrategy.IndexList) { foreach (BaseComparer element in tableStrategy.IndexList) {
@ -136,20 +136,20 @@ namespace ICSharpCode.Reports.Core.Test.DataManager.TableStrategy
#region Setup/TearDown #region Setup/TearDown
private ICSharpCode.Reports.Core.TableStrategy SortTableStrategyFactory (SortColumn sortColumn) private ICSharpCode.Reports.Core.ListStrategy.TableStrategy SortTableStrategyFactory (SortColumn sortColumn)
{ {
var reportSettings = new ReportSettings(); var reportSettings = new ReportSettings();
reportSettings.SortColumnsCollection.Add(sortColumn); reportSettings.SortColumnsCollection.Add(sortColumn);
var tableStrategy = new ICSharpCode.Reports.Core.TableStrategy(this.table,reportSettings); var tableStrategy = new ICSharpCode.Reports.Core.ListStrategy.TableStrategy(this.table,reportSettings);
return tableStrategy; return tableStrategy;
} }
private ICSharpCode.Reports.Core.TableStrategy GroupTableStrategyFactory (GroupColumn sortColumn) private ICSharpCode.Reports.Core.ListStrategy.TableStrategy GroupTableStrategyFactory (GroupColumn sortColumn)
{ {
var reportSettings = new ReportSettings(); var reportSettings = new ReportSettings();
reportSettings.GroupColumnsCollection.Add(sortColumn); reportSettings.GroupColumnsCollection.Add(sortColumn);
var tableStrategy = new ICSharpCode.Reports.Core.TableStrategy(this.table,reportSettings); var tableStrategy = new ICSharpCode.Reports.Core.ListStrategy.TableStrategy(this.table,reportSettings);
return tableStrategy; return tableStrategy;
} }

Loading…
Cancel
Save