-
Notifications
You must be signed in to change notification settings - Fork 20
Feature Tour
In order to get the samples running without any difficulty you should read how to setup the sample environment.
The SharpDevelop Reports for .NET feature tour will cover the following topics:
-
First, please click "File / New" then select "Sharp Develop Reports" and click the "Create" button.
-
This brings up the SharpDevelop Reports Wizard where you can set the Report Name, the Report File Name, the Report Path and select the Report Model. Please keep "Pull Data" selected, then click the "Next" button:
- The next page allows you to define a database connection by right clicking "database connections" and selecting "Add connection"
- In the upcoming Data Link Properties dialog please select "SQL Native Client" and click "Next":
- In the Connection dialog please fill in the values as shown below and click "OK":
- Your SharpDevelop Reports wizard now shows the database connection and you can display the elements of the selected datasource:
- Now please drag and drop the table "Categories" to the Command Text window. This will autogenerate the SELECT statement:
- The next step in the wizard shows you the result set for your SELECT statement:
- When clicking the "Finish" button now, your report will be generated and shown in the report designer:
-
When clicking the "Preview" tab you can preview the rendered version of your report:
-
And last but not least, when you click the "Report Viewer" tab you can print or export your report to a PDF file:
- To create a Push Data Model based Report, please repeat the steps 1 to 8 of "Creating Reports using the Pull Data Model". Instead of clicking "Next", now please right click you result set and select "Save Result (Schema only)" and enter a file name for your .xsd file:
- Now please create another Report, but instead of choosing "Pull Model" in step 1 of your wizard, please choose "Push Model" and click "Next". Step 2 of your wizard now allows you to select your previously created .xsd file and check which fields should be databound to your report:
- After clicking the "Finish" button, your report will be shown in the report designer:
-
Please repeat step 1 to 6 from "Creating Reports using the Pull Data Model".
-
Instead of dragging a table to the Command Text window now please drag the "CustOrdersDetails" Stored Procedure to the Command Text windows and click "Next":
- In the ParameterDialog please enter the value for the detected Parameters for the Stored Procedure and click "OK":
- The Query Result window now shows a preview of the selected data:
- After clicking the "Finish" button the report is displayed in the Report Designer:
-
Now please create a new Windows Application in your preferred .NET IDE and add a reference to the ICSharpCode.Reports.Core which is in the \bin\AddIn folder. Also please add a reference to System.Configuration.dll which is installed in the GAC.
-
Define a connection string named "NorthwindConnection" which contains the connection string to your Northwind database:
connectionString="Data Source=(local)\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True;" providerName="System.Data.SqlClient"
-
Now, please add these additional usings:
using System.Configuration; using System.Data.Common; using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core.Exporter;
-
Paste the following code snippet into your application's code and correct the reportPath according to your path:
ReportEngine engine = new ReportEngine(); ReportParameters pm = new ReportParameters(); ConnectionStringSettings css = System.Configuration.ConfigurationManager.ConnectionStrings["NorthwindConnection"]; DbProviderFactory factory = DbProviderFactories.GetFactory(css.ProviderName); DbConnection conn = factory.CreateConnection(); string reportPath = @"C:\Users\AZeitler\Documents\SharpDevelopReports\Report1.srd"; ReportModel reportModel = ReportEngine.LoadReportModel(reportPath); PageBuilder pageBuilder = engine.CreatePageBuilder(reportModel); pageBuilder.BuildExportList(); pm.ConnectionObject = ConnectionObject.CreateInstance(conn); pm.SqlParameters.Clear(); pm.SqlParameters.Add(new SqlParameter("OrderID", System.Data.DbType.Int32, 10480)); engine.PreviewStandardReport(reportPath, pm);
-
Please build and run your application. This should start up the Report Viewer from within your .NET Application with a preview of your previously created report: