Fog Creek Software
Discussion Board




Perl and Crystal Reports

Does anyone know if it's possible to integrate Perl, Crystal Reports, Apache and Linux?  I've Googled, searched the newsgroups, Crystal's website - and can't find anything conclusive.

Any of you braniacs have an answer?

Anon123
Monday, July 19, 2004

Braniacs?  Like.. people who really like bran?

muppet
Monday, July 19, 2004


You could put the Crystal Reports server on an IIS box, then have the perl script call the URL to generate the report as a PDF.

I think Crystal only runs on IIS, not apache.

www.xndev.com (Formerly Matt H.)
Monday, July 19, 2004

last I knew Crystal offered a C++, Java and VB api.

.net, the equivalent of MS Bob.
Monday, July 19, 2004

Not beautiful, but you can call it as a COM object, which you can do from Perl.

Lee
Monday, July 19, 2004

As I hit "enter" I realized I wasn't sure if that works on Linux.. 

Lee
Monday, July 19, 2004

Can you be more specific about where the report will actually be viewed and where/how it will get it's data?

If the reports will be viewed in a web browser, will it be IE only? Do you want to render the report on the server and then mail it as an attachment?

Start off by deciding where the report is being put together (where do you want the RPT file to get it's data and how?) Here are your options:

1.) You can let the RPT file connect to the data-source itself when it's viewed (in which case the end-users machine must have access to the database server or file). If so, you can let them view the RPT in any of the available viewers (activex viewer, java applet viewer, crystal reports program, etc.) This way, there is not much to do at all on the web server except output a trivial OBJECT tag.

2.) You can run the report on the server and send the resulting export file down to the client. You can export an RPT as a PDF, HTML, etc.. however this means that your PERL environment must allow you to manipulate the RPT object model (accessible via ActiveX/COM/Windows only).

3.) You can get the data that the RPT needs and send it down to the client in the form of XML where you can give the XML to the RPT on the client using javascript that turns the XML into an ADO Recordset. Once you have your Recordset, you just hand it to the RPT Viewer. (Win/IE clients only)

4.) I think there's a way to tell the viewer to request the report data (or report+data) from a URL, but I have never used this method, so I can't vouch for it's usefulness.

Wayne
Monday, July 19, 2004

We'd like the report to be stored on the server and output generated by the server.  Then, the client app would simply be a browser app.  We could ristrict our users to using IE if absolutely necessary.

Ieechema
Tuesday, July 20, 2004

*  Recent Topics

*  Fog Creek Home