Crystal.. Problem with the Export

Posted on 2010-08-14
Last Modified: 2013-11-26
i have this error.
Object reference not set to an instance of an object.

Three things irksome about this error..

1) All was working fine I tweeked stuff not at all involved with this module or code and have an issue.
3) you can see I instatited a new instence in the first code line of the "try"
2) I could understand if this was a message at the first use of the field.. But it is not.. I load it, add parameter info to it.. Then it blows at the last line.. crReportDocument.Export();

public void CreateEnglishPdf(string ReportPathAndName, string PDFPathAndName, string UnitType,string UnitNo,

         string Name_SP_Table, DataSet ds,string rptType)


        this.Name_SP_Table = Name_SP_Table;

        this.UnitType = UnitType;

        this.UnitNo = UnitNo;


        //Call the report from its stored directory




            //Reportdataset = ds;


            crReportDocument = new CrystalDecisions.CrystalReports.Engine.ReportDocument();


            //Apply logon information to the main report and all sub reports



            ParameterValues ParmValue = new ParameterValues();

            ParameterDiscreteValue ParamDiscreteValue = new ParameterDiscreteValue();

            ParamDiscreteValue.Value = UnitType;



            //crReportDocument.SetParameterValue("@UnitType", UnitType); 


            ParameterValues ParmValue2 = new ParameterValues();

            ParameterDiscreteValue ParamDiscreteValue2 = new ParameterDiscreteValue();

            ParamDiscreteValue2.Value = UnitNo;



            //crReportDocument.SetParameterValue("@UnitNo", UnitNo); 

            crDiskFileDestinationOptions = new DiskFileDestinationOptions();

            crDiskFileDestinationOptions.DiskFileName = PDFPathAndName;

            crExportOptions = crReportDocument.ExportOptions;

            crExportOptions.DestinationOptions = crDiskFileDestinationOptions;

            crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;

            if (rptType == "PDF")


                crExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;


            else if (rptType == "doc")


                crExportOptions.ExportFormatType = ExportFormatType.WordForWindows;




        catch (Exception)









Open in new window

Question by:moosetracker
LVL 16

Accepted Solution

Vikram Singh Saini earned 500 total points
ID: 33439983

I have some questions about your problem:

(1) In which line exception raised?

(2) Are you sure string ReportPathAndName is not null?

(3) "I tweeked stuff not  at all involved with this module" So what is that stuff?


Author Closing Comment

ID: 33440547
Found it, but thanks for the attempt.. And it was in the tweeking.
I altered the Stored Procedure that a CR was loading from.. this caused I don't know what, but the end of the SP had a Select statement that defined the Fields of the CR.. When I tested the SP in SQL all looked good, Select statement created the output. But CR no longer liked it. I went in and said update the Datasource, CR says "Datasource updated" no problem.. But, the table is now a no field table (which it doesn't even tell me I lost fields I ame using while updating..)  Just when you run it blows up, but not with a recognizable error..

Could never fix the SP and have the modifications I wanted (which involved no change to field layout, but more update queries to filter the data).. So I pushed the results to a table, and had crystal link to the table.

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
Here's a very brief overview of the methods PRTG Network Monitor ( offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now