Como Continuacao agora falaremos sobre o assunto C# Crystal Reports da consulta SQL.gerando uma Strongly Typed DataSet,Aqui estamos gerando um relatorio com a tabela Produto. Entao, estamos passando o sql abaixo para gerarmos o relatoriosql = "SELECT Product_id,Product_name,Product_price FROM Product";Crie um novo projeto C # e crie um novo Strongly Typed DataSet de Projeto - Add New Item.Adicione tres colunas na Strongly Typed DataSet : Product_id Product_name Product_priceCrie um novo Crystal Report e selecione DataTable como Data Source,voce pode selecionar a data table apartir do wizard , Project Data - ADO.NET Dataset - Crystal report Dataset1 - dataset1.depois clique em NEXT.Selecione os campos (product_id, product_name, Product_price) a partir da tela seguinte e clique no botao FINISH.Entao voce vai ter a tela de designer com os campos selecionados,agora a parte de designer acabou. apartir do codigo fonte nos podemos passar o codigo fonte SQL para o crystal reports.Selecione o formulario padrao (Form1.cs) que voce criou em C # e arraste um button e um CrystalReportViewer ao seu formulario.Voce tem que incluir CrystalDecisions.CrystalReports.Engine em seu codigo-fonte C #.using CrystalDecisions.CrystalReports.Engine;using CrystalDecisions.Shared;Copie e cole o seguinte codigo-fonte e executar o seu projeto C #using System;using System.Windows.Forms;using CrystalDecisions.CrystalReports.Engine;using CrystalDecisions.Shared;using System.Data;using System.Data.SqlClient;namespace WindowsApplication1{ Form1 public partial class: Form { public Form1 () { InitializeComponent (); } private void Button1_Click (object sender, EventArgs e) { SqlConnection cnn; cadeia connectionString = null; string sql = null; connectionString = "data source = SERVERNAME; initial catalog = DatabaseName; id = user username; password = PASSWORD;" cnn = new SqlConnection (connectionString); cnn.Open (); sql = "SELECT product_id, product_name, Product_price FROM Product"; SqlDataAdapter SqlDataAdapter dscmd = new (sql, cnn); DataSet1 ds = new DataSet1 (); dscmd.Fill (ds, "Produto"); MessageBox.Show (ds.Tables [1] Rows.Count.ToString ().); cnn.Close (); CrystalReport1 objRpt = new CrystalReport1 (); objRpt.SetDataSource (ds.Tables [1]); crystalReportViewer1.ReportSource = objRpt; crystalReportViewer1.Refresh (); } }}OBS : Voce tem que fornecer as informacoes necessarias do database para a Connection String. Como imprimir o Crystal Reports em C# :segue-se o codigo fonte :using System;usando System.Windows.Forms;usando CrystalDecisions.CrystalReports.Engine;usando CrystalDecisions.Shared;namespace WindowsApplication1{ Form1 public partial class: Form { public Form1 () { InitializeComponent (); } private void Button1_Click (object sender, EventArgs e) { CryRpt ReportDocument ReportDocument = new (); cryRpt.Load ("PUT PATH CRYSTAL RELATORIO AQUI \ CrystalReport1.rpt"); CrtableLogoninfos TableLogOnInfos = new TableLogOnInfos (); TableLogOnInfo crtableLogoninfo = new TableLogOnInfo (); ConnectionInfo crConnectionInfo = new ConnectionInfo (); CrTables tabelas; crConnectionInfo.ServerName = "SEU SERVERNAME"; crConnectionInfo.DatabaseName = "NOME DATABASE"; crConnectionInfo.UserID = "USERID"; crConnectionInfo.Password = "SENHA"; CrTables = cryRpt.Database.Tables; foreach (CrTable CrystalDecisions.CrystalReports.Engine.Table em CrTables) { crtableLogoninfo = CrTable.LogOnInfo; crtableLogoninfo.ConnectionInfo = crConnectionInfo; CrTable.ApplyLogOnInfo (crtableLogoninfo); } cryRpt.Refresh (); cryRpt.PrintToPrinter (2, true, 1, 2); } }} Como melhorar a eficiencia de qualquer Crystal Report utilizando uma ou mais das cinco etapas neste artigo :Desastre!Voce tenta executar o relatorio por um mes no banco de dados e nao os dois dias de teste de dados que voce usou para o desenvolvimento.De repente, tempo de execucao do seu relatorio vai de 20 segundo a duas horas.Cada desenvolvedor de Cristal Reports experimentou essa situacao e pode ser um dos aspectos mais frustrantes do design do relatorio.Felizmente, ha uma variedade de coisas que pode ser feito