Getsuyodev, Programming is mainly used when constructing an application. Programming requires knowledge of application domains, algorithms, and programming language expertise. Programming can be developed in different logic based on developer knowledge.

CSharp Crystal Reports from SQL Query



Here we are generating a report against the Product table . So we are passing the following sql and generating the report.

sql = "SELECT Product_id,Product_name,Product_price FROM Product";

Create a new C# project and create a new Strongly Typed Dataset from Project – Add New Item Dialogue Box.

Add three column in the Strongly Typed Dataset.

  1. Product_id
  2. Product_name
  3. Product_price

Create a new Crystal Report and select DataTable as Data Source. You can select DataTable from the wizard, Project Data – ADO.NET Dataset – Crystal report Dataset1 – dataset1. Click the Next Button.

Select fields ( Product_id, Product_name, Product_price ) from the next screen and click the finish button. Then you will get the designer screen with the selected fields. If you do not know how to create a dataset, refer the previous section How to create a C# Crystal Report from Strongly Typed Dataset.

Now the designing part is over. From the source code, we can pass the SQL source code to Crystal Reports.

Select the default form (Form1.cs) you created in C# and drag a button and a CrystalReportViewer control to your form.

You have to include CrystalDecisions.CrystalReports.Engine in your C# Source Code.

using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;

Copy and paste the following source code and run your C# project.

using System;
using System.Windows.Forms;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using System.Data;
using System.Data.SqlClient ;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            SqlConnection cnn ;
            string connectionString = null;
            string sql = null;

            connectionString = "data source=SERVERNAME;initial catalog=DATABASENAME;user id=USERNAME;password=PASSWORD;";
            cnn = new SqlConnection(connectionString);
            cnn.Open();
            sql = "SELECT Product_id,Product_name,Product_price FROM Product";
            SqlDataAdapter dscmd = new SqlDataAdapter(sql, cnn);
            DataSet1 ds = new DataSet1();
            dscmd.Fill(ds, "Product");
            MessageBox.Show (ds.Tables[1].Rows.Count.ToString());
            cnn.Close();

            CrystalReport1 objRpt = new CrystalReport1();
            objRpt.SetDataSource(ds.Tables[1]);
            crystalReportViewer1.ReportSource = objRpt;
            crystalReportViewer1.Refresh();
        }
    }
}

connectionString = “data source=SERVERNAME;initial catalog=DATABASENAME;user id=USERNAME;password=PASSWORD;”;

You have to provide the necessary database information to Connection String.


Comments are closed.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More