Thursday 1 December 2011

C# Crystal Reports step by step

A step by step tutorial for beginners who is creating their Crystal Reports for the first time in C#.
All C# Crystal Reports Tutorial in this website is based on the following database - crystaldb. So before you begin this section , please take a look at the database structure of crystaldb - Click Here C# crystaldb
Here we are going to create a new Crystal Reports in C# from Product table in the above mentioned database crystalDB. The Product Table has three fields (Product_id,Product_name,Product_price) and we are showing the whole data from Product table to the C# - Crystal Reports project.
Open Visual Studio .NET and select a new CSharp Windows project.
csharp-crystal-reports-1.GIF
Now you will get the default Form1.cs.
From the main menu in Visual Studio C# project select PROJECT-->Add New Item . Then Add New Item dialogue will appear and select Crystal Reports from the dialogue box.
csharp-crystal-report-add-newitem
Select Report type from Crystal Reports gallery.
csharp-crystal-report-gallary
Accept the default settings and click OK.
Next step is to select the appropriate connection to your database (here crstaldb). Here we are going to select OLEDB Connection for SQL Server to connect Crystal Reports in C#.
Select OLE DB (ADO) from Create New Connection .
csharp-crystal-reports-oledb
Select Microsoft OLE DB Provider for SQL Server .
csharp-crystal-reports-oledb-provider
The next screen is the SQL Server authentication screen for connecting to the database - crystalDB. Select your Sql Server name , enter userid , password and select your Database Name .
csharp-crystal-reports-oledb-authentication
Click next , Then the screen shows OLE DB Property values , leave it as it is , and then click finish button.
csharp-crystal-reports-oledb-finish
After you click the finish button , the next window you will get your Server name under OLEDB Connection, from there selected database name (Crystaldb) and click the tables , then you can see all your tables from your database.
From the tables list double click the Product table then you can see the Product table will come in the right side list.
csharp-crystal-reports-product
Click Next Button
Select all fields from Product table to the right side list .
csharp-crystal-reports-all-tables
Click Finish Button. Then you can see the Crystal Reports designer window in your C# project. In the Crystal Reports designer window you can see the selected fields from Product table. You can arrange the field Objects and design of the screen according your requirements. After that your screen is look like the following picture.
csharp-crystal-report-designer-window
Now the designing part is over and the next step is to call the Crystal Reports in your C# application and view it through Crystal Reports Viewer control in C#.
Select the default form (Form1.cs) you created in C# and drag a button and a CrystalReportViewer control to your form .
csharp-crystal-reports-viewer
After you drag the CrystalReportViewer to your form , it will look like the following picture.
csharp-crystal-reports-form
You have to include CrystalDecisions.CrystalReports.Engine in your C# Source Code.
using CrystalDecisions.CrystalReports.Engine;



using System;
using System.Windows.Forms;
using CrystalDecisions.CrystalReports.Engine;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ReportDocument cryRpt = new ReportDocument();
            cryRpt.Load(PUT CRYSTAL REPORT PATH HERE\\CrystalReport1.rpt");
            crystalReportViewer1.ReportSource = cryRpt;
            crystalReportViewer1.Refresh();
        }
    }
}
 
 
 
 
NOTES: 




     cryRpt.Load(PUT CRYSTAL REPORT PATH HERE\\CrystalReport1.rpt");  





   The Crystal Reports file path in your C# project file location, there
 you can see CrystalReport1.rpt . So give the full path name of Crystal 
Reports file  like c:\projects\crystalreports\CrystalReport1.rpt 





   When you run the source code you will get the report like the following picture. 





   
csharp-crystal-reports-final


When you click the button, the application will ask the username and password. Later in this tutorial you can find how to avoid asking username and password - C# Dynamic logon parameters in Crystal Reports.

Hope this tutorial help you to create your first Crystal Reports in C#.
 
 

No comments :