Fog Creek Software
Discussion Board




Crystal Reports Deployment

Hi All,

I am looking for different options for Crystal Reports deployment.
Honestly I am not much excited about using Crystal Decisions product after using Crystal Reports application to create the report! :(

Have any of you deployed crystal reports using alternate tools and how good/bad they were? 
Any suggestions/Tips in this matter will be highly welcome.

Regards,
JD
http://jdk.phpkid.org

JD
Thursday, September 04, 2003

What do you mean by "deploy"?

Do you mean that you want to send a static report to somebody for viewing?

Do you want to allow someone to run the report using a live data-source?

Is this report part of a web application or a desktop application?

If it's part of a web app, you can use the ActiveX or Java viewers, or you can run it on the server and export it to PDF, then re-direct the user to the PDF.

If it's part of a desktop app, you have to make sure all of the runtime dependancies get installed and then you have to use the CRAXDRT report object model to run/export/display the report.

BTW, what kind of problems are you having with Crystal?  I've been using it for a while and I'm pretty sure I know the best way to run reports.  (Hint: don't let the report connect to the database, instead create and open an ADO Recordset and then hand that to the Report object, it's the simplest way.)  If you want a good code sample/tutorial I'll be glad to send you one.  The benefits of this approach are numerous.

IMHO you won't find another reporting tool that allows the flexibility that Crystal provides but some people like ActiveReports better.

Wayne
Thursday, September 04, 2003

One option is to execute the report via command line generate(using your language of choices "Shell" function) as the desired output (I assume crystal executable can generate HTML), and send the response back to the user.  Are parameters a problem?

Daniel Shchyokin
Thursday, September 04, 2003

Thanks Wayne and Daniel for your responses.

I guess I need to provide more information regarding what I am looking at.

Here’s the scenario:
We have developed several crystal reports (.RPT files) using Crystal Reports 9.
Now we would like not so techie business client to use them. We would not like to install Crystal Reports 9 Application on their machine neither we are looking to create VB application as front end for our several reports.

What we are looking for is, a general tool which can be installed on client’s machine and user can run reports which we developed. The tool should be easy to use and implementing them on several client machines, shouldn’t be a pain.

I have heard of Crystal Viewer and I am downloading the trial currently. Any one has experience with Crystal Viewer??
Or do you have any other suggestions?
Please post them here.
JD
http://jdk.phpkid.org

JD
Thursday, September 04, 2003

It was a long time ago, back when I first got my hands on VB3, that I was embedding crystal reports OLE objects (iirc; same difference anyway) in VB windows to show results etc.  Very straightforward, very nice.

Maybe techniques have changed since then, but that sounds like exactly what you plan to do.  I am sure you can bury a crystal reports view widget into your vb app.

i like i
Thursday, September 04, 2003

Check out some of the links on this page:

http://www.kenhamady.com/bookmarks.html

Wayne
Thursday, September 04, 2003

Sorry, I never used Crystal Viewer we just built our own with VB. 

It's not just a viewer for Crystal Reports though because it's pretty tightly integrated with our platform, otherwise I would just give you the source code.

Wayne
Thursday, September 04, 2003

Hi Wayne,

Thanks a lot for that link, it looks really useful!

Anyone else has used the tools mentioned in the link posted by Wayne?

Regards,
JD

JD
Thursday, September 04, 2003

Hi Wayne,

One question:

Is it possible to make a "generalized" VB application which can take RPT file, find out it's parameters and ask user to enter parameter and then display it?

OR is it that for each report, I will have to make separate App or atleast separate coding. Can you give me some ideas??

Regards,
JD

JD
Thursday, September 04, 2003

We're trying to deploy Crystal .NET (basically CR 9.0 w/wrappers) to end users and let me tell you, it's hell.

If you don't need to support older systems and don't mind lots of unnecessary files being installed, you can use visual studio to create a "Setup and Installation Project".  There's a wizard for it.  Add the appropriate Merge Modules and you're set.  It will create an MSI file for you.

Anything older than Win2k (i.e. the 98 family) is tough, because you won't necessarily have the supporting DLLs.  A couple random hints:

- You can use VCREDIST.EXE (available from MS) to install MFC42.DLL, ATL.DLL and other files needed by Crystal.

- Some machines will need a file called UNICOWS.DLL to be in your app directory (I think this is only 98,ME,NT4, but don't quote me)

- If you're truly deploying to a mass market, be sure to test rigorously on every platform out there.  Crystal is picky.

I've spent weeks on getting it to work right on every platform and have wanted to beat Crystal's COM programmers with a lead pipe on several occasions.  Good luck!

Bill Carlson
Thursday, September 04, 2003

ActiveReports.Net is four dll's - just copy them to the application's bin directory.

Philo

Philo
Thursday, September 04, 2003

I guess I've been lucky with all those nasty dll problems, I just read the "runtime file dependancies" help topic and it listed all the dll's to include.  Wise installer also comes with a Crystal Merge Module too if you haven't tried it.  Our reporting app runs on 98 thru XP with no problem.



JD, here is the reply to your email.  My mail servers couldn't find your address so here is the answer to your question:

Yep, you can use the Report object's ParameterFields collection property.

    Check out the topic "Working with parameter fields" under "RDC Programming"
in the CR9 Dev Help file (most likely located at C:\Program Files\Crystal
Decisions\Crystal Reports 9\Developer Files\Help\En\CrystalDevHelp.chm on
your computer).

    Each ParameterFieldDefinition object has a number of properties that would
allow you to figure out how to display a graphical representation (what type
of data it accepts (ValueType), default value, name of the parameter, etc.)

    Check out "ParameterFieldDefinition Object" under "Report Designer
Component Object Model" in the Dev Help.

    You may already know this but to use it in VB6 you have to add a reference
to the "Crystal Reports 9 Activex Designer Design and Runtime Library" and
add the "Crystal Report Viewer 9" component to view them.

    So you could make a generalized app.  The app would allow the user to find
a rpt file in the file system, then you use CRAXDRT App and Report object to
open the file, loop thru the parameter fields of the report and dynamically
create the parameter screen controls.  Once the paramaters were filled in
apply them to the report object, run it, and hand the report to the viewer.

    If you don't want to do all that, there may be an application out there
already, did you look at the links on this page?
http://www.kenhamady.com/bookmarks.html

Wayne

Wayne
Friday, September 05, 2003

Hey Wayne,

Thanks for the pointers, it's very much appreciated!
I shall get back to you in case if I run across problems!

JD

JD
Friday, September 05, 2003

*  Recent Topics

*  Fog Creek Home