Exporting the Crystal Report XI R2 using C#

Hi,

I am creating a new program to generate and export the Crystal report as xls using C#. I have created a rpt file using CR binding to xsd.  The requirement is the rpt and the xsd should not be included in the solution. During the runtime, I am loading the rpt file and assigning hte dataset. But I am getting the error Logon Failed during the time of export
The Error is in the line ExportReport.Export.ObjRpt.Export

Please advise
public void Load()
        {
            string ConnectionDetails = GetConfigSetting("Connection");
             ReportDocument _CrystalReport;
            _CrystalReport = new ReportDocument();
 
            _CrystalReport.Load(@"C:\\Report1.rpt");
 
            SqlConnection Connection = new SqlConnection(ConnectionDetails);
            SqlCommand Command = new SqlCommand("GetDATA", Connection);
            Command.CommandType = CommandType.StoredProcedure;
 
	    SqlDataAdapter dsDA = new SqlDataAdapter(Command);
            DataSet dsReport = new DataSet();
            
            try
            {
                dsDA.Fill(dsReport);
                _CrystalReport.SetDataSource(dsReport);
                
            }
            catch (Exception Ex)
            {
                Console.WriteLine("Exception ocurred in LoadData \n {0}", Ex.Message.ToString());
            }
 
       
                    try
            {
            ExportReport rptExp = new ExportReport("xls", "C:", "test");
 
            rptExp.Report = _CrystalReport;
 
            string _exportedFile = rptExp.Export();
            Console.WriteLine("File [{0}] successfully exported", _exportedFile);
        }
        catch (Exception Ex)
        {
 
            Console.WriteLine("Exception ocurred in LoadData \n {0}", Ex.Message.ToString());
 
        }
 
	ExportReport.cs
	---------------
 
	 private void ConfigureExportToXls()
        {
            objExportOpt.ExportFormatType = ExportFormatType.Excel;
 
            ExcelFormatOptions objExcelOptions = new ExcelFormatOptions();
            objExcelOptions.ExcelTabHasColumnHeadings = true;
            objExcelOptions.ShowGridLines = true;
            objExcelOptions.ExcelUseConstantColumnWidth = false;
            objExportOpt.ExportFormatOptions = objExcelOptions;
            objdiskDest.DiskFileName = exportPath +  expfileName + ".xls"; ;
            objExportOpt.DestinationOptions = objdiskDest;
        }
	 public string Export()
        {
            //try
            {
                ExportSetup();
                ExportSelection();
                exportedfile = objdiskDest.DiskFileName.ToString();
                objRpt.Export();
                return exportedfile;
            }
 
        }
private void ExportSelection()
        {
            switch (expFormat)
            {
                case "rpt"://  ExportFormatType.CrystalReport
                    ConfigureExportToRpt();
                    break;
                case "rtf"://ExportFormatType.RichText
                    ConfigureExportToRtf();
                    break;
                case "wrd": //ExportFormatType.WordForWindows
                    ConfigureExportToDoc();
                    break;
                case "xls": //ExportFormatType.Excel:
                    ConfigureExportToXls();
                    break;
                case "pdf"://ExportFormatType.PortableDocFormat:
                    ConfigureExportToPdf();
                    break;
                case "html32"://ExportFormatType.HTML32:
                    ConfigureExportToHtml32();
                    break;
                case "html40"://ExportFormatType.HTML40:
                    ConfigureExportToHtml40();
                    break;
            }
        }
 
	  private void ExportSetup()
        {
 
            if (!System.IO.Directory.Exists(exportPath))
            {
                System.IO.Directory.CreateDirectory(exportPath);
            }
            objdiskDest = new DiskFileDestinationOptions();
            objExportOpt = objRpt.ExportOptions;
            objExportOpt.ExportDestinationType = ExportDestinationType.DiskFile;
            objExportOpt.FormatOptions = null;
        }

Open in new window

vonbalajiAsked:
Who is Participating?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.