Crystal Reports - Database Login dialog when using datasets

T

TJoker .NET

I'm developing an VB.NET Windows Forms application that uses CR for VS.NET
(original version shipped with VS.NET 2002 - my VS.NET has the latest SP
installed, no SPs for CR).
My reports get their data from ADO.NET Datasets that are pre-populated by
other modules of the application.
What I need to do is to use these datasets as the datasources of my reports.
Fine, I know how to do that and it works perfectly on my development box.
The trouble comes when I deploy the application on the client machine.
I created a installation project in VS.NET, added the required CR merge
modules, added the keycode, and it seems to install everything fine. But
when it tries to show the reports in the CrystalReportViewer control, it
pops-up the 'Database Login' dialog.
Who is talking about database here? I'm already giving all the needed data.

The reports were all created from typed datasets, using datasources of type
ADO.NET(XML).
It seems that a lot of people have the same problem but the only workaround
so far appears to be "use only one DataTable inside your dataset, containing
all the data you need". I'm trying not to have to resort to this approach
because my datasets are very complex with many tables.
What I've read in other similar posts is that it seems that CR gets lost
when the dataset has more than one table

Is this a confirmmed bug or am I missing something ?
This is how my code looks like:

reportDocument = new MyCustomReport()
reportDocument.SetDataSource(myLoadedDataset)
ReportViewerControl.ReportSource = reportDocument

Thanks

TJ!
 
P

Paul J. Barrett

The problem resides in the name of the table when you fill it. You must
make sure that the name of the table is always the same. I got around
this by using the Stored procedure name as the table name but then ran
into the same problem you are having when I corrected a spelling mistake
in the stored procedures name.

sqlDAdapter1.Fill(myDataSet,"MyTable");

Hope this helps. You can use the debugger to check the table name and
compare it to the table name that you used in the crystal report.

Sincerely,
Paul J Barrett
 
T

TJoker .NET

I created a small sample project that reproduces the error and making it
available on the following url:

http://sergiopereira.com/temp/test_crystal.zip

In the zip file there are two projects.. one for the test application and
one for the Setup.
What I in my test application was
- Defined a typed ADO.NET dataset (DataSet1.xsd)
- Created a report (CrystalReport1.rpt)
- Created some menus options:
- one to load the data from a Database server (northwind
database) into a dataset of type DataSet1
- one to create a report of type CrystalReport1 and bind that
dataset the report
- one to save the dataset's xml to C:\
- one to load the dataset with XML from C:\ and show the report

I ran this app in my local development box (where weverything always
works), loaded the dataset from the database, viewed the report, and saved
the XML to a file in c:\. Later I ran the application again and loaded the
XML from C:\. All that worked perfectly.
Then I built the installation, and installed on the client machine. Then I
put that XML file in its C:\ and tried to, ran the app and tried to load the
using the menu option.. Boom! Same "Database Login" screen...

Could anyone please verify my sample project and possibly try to reproduce
this ? Something could be missing from the deployment documentation, which I
read and I am following thoroughly.

By the way, I forgot to also mention that the user executing the application
is always the administrator of the computer, so this shouldn't be any
permissions problem.

Thanks for the help.

TJ
 
J

Jeremy Cowles

I can't see your orriginal question, but to suppress the DB Login dialog I
had to explicitly set the login info for every connection at the time when
the report was loaded. That was the only way I could do it.

HTH,
Jeremy
 
T

TJoker .NET

Got it to work!!!!!!!!!

After using a more decent support account (my company bought Crystal
Enterprise Server) I was able to chat with the "real people" support.
After messing aroung with try and error procedures, we figured out the
obvious, the version of some of the dlls were mixed.
The funny thing is that it was mixed because I had downloaded their very own
update for the merge modules:
http://support.crystaldecisions.com/communityCS/FilesAndUpdates/cr_net_merge
modules_en.zip.asp
But, fear not! Now you can download this update with confidence because it
has been fixed, although they did not correct the publishing date. This
update has been corrected after 8/6/2003 (when I downloaded it) but the
website did not make clear that there was a new version available.
I just downloaded the new version, installed, recompiled my setup, ran in
the client box and it worked!

Thanks fr anyone following this thread.

TJ
 
T

TJoker .NET

Got it to work!!!!!!!!!

After using a more decent support account (my company bought Crystal
Enterprise Server) I was able to chat with the "real people" support.
After messing aroung with try and error procedures, we figured out the
obvious, the version of some of the dlls were mixed.
The funny thing is that it was mixed because I had downloaded their very own
update for the merge modules:
http://support.crystaldecisions.com/communityCS/FilesAndUpdates/cr_net_merge
modules_en.zip.asp
But, fear not! Now you can download this update with confidence because it
has been fixed, although they did not correct the publishing date. This
update has been corrected after 8/6/2003 (when I downloaded it) but the
website did not make clear that there was a new version available.
I just downloaded the new version, installed, recompiled my setup, ran in
the client box and it worked!

Thanks fr anyone following this thread.

TJ
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top