views:

339

answers:

6

I'm looking for a templating tool that allows powerful manipulation of data and report building. JasperReports is powerful, but is it the best out there? I generally don't need the ability for fancy colors or gradients, but I do need the ability to position data accurately and produce reliable, quick results. Ideally, generating a report shouldn't need to be driven by a visual tool, either, and should be entirely API based.

Does anyone have real experience with any major reporting framework in a large scale application? Some of the reporting tools I've seen deal primarily with BusinessIntelligence, and thus less direct programmatic control.

So in summary, I need

  • Strong documentation and support
  • The ability to control document output and print to PDF, programmatically
  • Multiple layout formats
  • Speed and efficiency
  • Ability to last at least 4+ years

and I don't need

  • Pretty colors
  • Rich interfaces (HTML output/etc.)

In general, I'll be producing batch documents, which is why speed and efficiency are very relevant concerns.

Suggestions? Thoughts?

+2  A: 

Sounds like a job for Crystal Reports.

Tom
@Tom I used Crystal Reports with Java a couple of years ago. I remember it being horrible. Has that gotten better?
jschoen
A couple of years ago? It definitely got better. (Which project doesn't in that time frame) ;-)
Nils Schmidt
+9  A: 

BIRT works for us. It's one of the core Eclipse products and we use it for the web reporting side of our product (currently shipping over 500 reports).

Head on over to Eclipse BIRT and check out the doco and samples, they're comprehensive. The BIRT newsgroup is also very active.

It has many output formats (PDF, Excel, HTML, etc) and you can schedule reports to be run using normal schedulers (it has a CLI interface). The running and rendering of reports can be different phases so you can generate just the report data and render it later in any form you want.

In addition, it has full Java and Javascript control over the report object model (report equivalent to the web browser DOMs that allow you to do all those fancy web tricks). We've written quite a bit of Javascript to make the reports more interactive (standard reports have interactivity, it's just that you can do some much more once you start running code within the report itself).

The web (HTML) aspect really shines (even though you don't seem that interested). The ability to drill down through hot links is a very good selling point.

As to its ability to last four years, it's hard to say but, given that it's been around for at least four years already (and that was 2.0), it's not a fly-by-night operation.

And, on top of all that, it does pretty colours and charts as well. Anyway, I hope you've enjoyed my advertorial, feel free to ask any questions you want and I'll try to answer them, or refer them for our more technically minded specialists :-)

paxdiablo
+8  A: 

JasperReports is powerful, but is it the best out there?

JasperReports is the best Java based reporting solution available.

Read the JasperReports 3.6 Development Cookbook to understand its capabilities.

Adrian A.
+1 for the book recommendation. I'll check it out.
Stefan Kendall
Jasper Reports has a small and useful API and you can generate reports with or without a visual tool, depending on your needs. You can also use custom data sources. And it is fast even with very large reports (well, 72 pages was my largest report, but it was generated in seconds). And batch reports generation works also fine - you can automatically send them per email or upload them somewhere.
m_pGladiator
@m_pGladiator: I would not call the API small. The API is extensive and massively rich in features. Anything you can do through iReport is available, and much, much more. The API also ties into the JFreeChart API (amongst others) for full control over every aspect of charts.
Dave Jarvis
A: 

You can find some links and reviews to a few other options here:

http://www.osalt.com/crystal-reports

The newest version of Crystal Reports is actually pretty decent, and there is quite a bit of good documentation for it (both bundles and on the web).

wshato
A: 

The Business Intelligence and Reporting Tools (BIRT) Eclipse project is definitely the way to Go, I've been using it for about two years now with no complain.

  • Report designer eclipse plugin (Very, very easy to use).
  • Multiple report output formats.
  • You can embedded the BIRT report engine runtime with you app, or call it via a http request.
  • Has a very active user community.
  • Has lots of charts and components.
  • Can be extended.
StudiousJoseph
A: 

I can recommend FastReport.net

Merl