Click here to Skip to main content
15,891,253 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
Hello,

I am using this code for display data in crystal report but data its not displaying only dataset data, its displaying only crystal report parameter or textbox data.

How will be display data in crystal report using c#?
My code:-

C#
SqlConnectionClass conString = new SqlConnectionClass();
            SqlCommand cmd = new SqlCommand("procGeneratePDF", conString.GetConnection());
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@InvoiceNumber", SqlDbType.Int).Value = InvoiceNum;
            DataSet ds = new DataSet();
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            sda.Fill(ds);

ReportDocument InvoiceReportDocument = new ReportDocument();

InvoiceReportDocument.Load("../../InvoiceReport.rpt");
            InvoiceRep.SetDataSource(ds);
            InvoiceRep.SetParameterValue("CustomerName", cmbCustomer.Text);
            InvoiceRep.SetParameterValue("CustomerAddress", txtCustomerAdd.Text);
            InvoiceRep.SetParameterValue("CustCIty", txtCity.Text);
            InvoiceRep.SetParameterValue("CustState", txtState.Text);
            InvoiceRep.SetParameterValue("CustPIN", txtPin.Text);
            InvoiceRep.SetParameterValue("CustCountry", txtCountry.Text);
            InvoiceRep.SetParameterValue("CustInvoiceNumber", txtInvoiceNumber.Text);
            InvoiceRep.SetParameterValue("ProjPORef", txtPORef.Text);
            InvoiceRep.SetParameterValue("CustVendorCode", txtVendorCode.Text);
ExportInvoicePDF();


But data displaying in dataset only.

and I am also exporting to pdf also.

C#
public void ExportInvoicePDF()
       {
           InvoiceRep.SetDatabaseLogon("", "", @".\SQLEXPRESS", "abc");
           ExportOptions InvoiceExportOptions;
           DiskFileDestinationOptions InvoiceDiskFileDestinationOptions = new DiskFileDestinationOptions();
           PdfRtfWordFormatOptions InvoiceFormatTypeOption = new PdfRtfWordFormatOptions();
           if (!Directory.Exists(@"c:\abc\Invoices"))
               Directory.CreateDirectory(@"c:\abc\Invoices");
           InvoiceDiskFileDestinationOptions.DiskFileName = @"c:\abc\Invoices\" + txtInvoiceNumber.Text + ".pdf";
           InvoiceExportOptions = InvoiceRep.ExportOptions;
           {
               InvoiceExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
               InvoiceExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
               InvoiceExportOptions.ExportDestinationOptions = InvoiceDiskFileDestinationOptions;
               InvoiceExportOptions.ExportFormatOptions = InvoiceFormatTypeOption;
           }
           InvoiceRep.Export();
           MessageBox.Show("Invoice is exported at c:\\abc\\Invoices\\" + txtInvoiceNumber.Text + ".pdf", "Information");
       }


I am using parameterized stored procedure.
when i export file in to the pdf so its geeting error in "InvoiceRep.Export"
error is:- Missing parameter value.

Please help me.
Thanks in advance.
Posted
Updated 4-May-15 23:25pm
v3

1 solution

First check no of parameters you pass & no in he report & use this code

SqlConnectionClass conString = new SqlConnectionClass();
            SqlCommand cmd = new SqlCommand("procGeneratePDF", conString.GetConnection());
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@InvoiceNumber", SqlDbType.Int).Value = InvoiceNum;
            DataSet ds = new DataSet();
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            sda.Fill(ds);
 
ReportDocument InvoiceReportDocument = new ReportDocument();
 
InvoiceReportDocument.Load("../../InvoiceReport.rpt");
           
            InvoiceRep.SetParameterValue("CustomerName", cmbCustomer.Text);
            InvoiceRep.SetParameterValue("CustomerAddress", txtCustomerAdd.Text);
            InvoiceRep.SetParameterValue("CustCIty", txtCity.Text);
            InvoiceRep.SetParameterValue("CustState", txtState.Text);
            InvoiceRep.SetParameterValue("CustPIN", txtPin.Text);
            InvoiceRep.SetParameterValue("CustCountry", txtCountry.Text);
            InvoiceRep.SetParameterValue("CustInvoiceNumber", txtInvoiceNumber.Text);
            InvoiceRep.SetParameterValue("ProjPORef", txtPORef.Text);
            InvoiceRep.SetParameterValue("CustVendorCode", txtVendorCode.Text);

 InvoiceRep.SetDataSource(ds);

ExportInvoicePDF();
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900