Are Open Source Reporting Tools Ready for Primetime?
Z0mb1eman asks: "My company is considering replacing our aging CrystalReports with an open source solution. We are currently doing our research, and the choices seem promising -- JasperReports, Actuate-backed BIRT, and Pentaho, which seems to combine other open-source reporting tools. All have some level of commercial support, but are they ready to replace established solutions like Crystal Reports or even Actuate? Is your company using an Open Source reporting tool, and what have been your experiences with such tools? Are there any other choices we should consider? What should we expect if we make the decision to switch?"
At my former place (a Fortune 50 retailer), we used JasperReports for a lot of our internal reporting needs. Generating PDF's for the web-applications, XLS docs for the business folks, and using all OS/Free software to do it.
We used JasperAssistant to create the reports, training even non-technical folks on how to create the reports they needed. The reports they made weren't going to win awards, but they got what they wanted and we saved time.
Just be aware that the JasperReports libs do their own thread management (at least it did as of the pre-1.2 release) so be aware of running inside of a J2EE container. We chose to write an asynchronous app that utilized JMS and a java daemon that read the queue and processed the messages, storing the output as a BLOB in a db.
I was the first easy to use system that had powerful report creation. You can drag and drop from palette to create a layout which is pretty nice. It has smart charts (coloring based on marker values), PDF and HTML output. It supports POJOs (scripted), JDO, JDBC, Hibernate and is fully integrated with Eclipse if you are into that side of things.
Another good thing is that Actuate has really responsive support and there are lots of examples, tutorials, and online help, etc.
The only real downside so far - installation is a bear (they have promised to fix this soon) and there are still some bugs here and there (though they are responsive via newsgroup, bugzilla, and email.)
I'm a Reporting Engineer, so business intelligence is my speciality. I do not work for a company that sells BI software or services, I'm just an administrator/power user. I've used BIRT, Crystal Reports, Crystal for Eclipse, MS SQL Reporting Services, Excel PivotTables with SQL Analysis Server cubes, Proclarity, Cognos ReportNet, Cognos Impromptu and Cognos PowerPlay.
Business Objects seems to have a pretty solid platform these days, but the company tends to use underhanded advertising techniques and make dubious claims in their marketing material. I'm not sure how they are once you are a customer, but I have been unimpressed with their sales pitches to me. Microsoft SQL 2005 has some pretty neat tools bundled. They have really come a long way, and they are fantastic on the back-end or for use internally to the IT department, but they really have nothing in the way of user-facing front-ends that I would consider ready for "prime time". BIRT looks promising, and within a decade I would say it will be fantastic software.
I highly recommend looking at Cognos Series 8. The back-end is a web services based framework and the zero client front ends blows everything else I have seen out of the water. It is simply the best platform I have *ever* used, though it can be a bit pricey. They used to work with you quite a bit on the price; not sure if they still do that with their new named-user-based licensing model. Their support is excellent as well. I was an early adopter of ReportNet, and Cognos flew an engineer down to our site on their dime to troubleshoot a critical bug; we were not a big site, at only 60ish end-users.
Call up a Cognos rep, they are usually willing to come on-site to do a demo.
For example we embedded Crystal Reports into one of the applications as an easy way for our product customers to get the data in a nice printable form. A number of our customers had created their own custom reports. While working on the new version of our app we discovered a few bugs in CR that prevent us to do things more flexibly, specifically automate creation of report styles as data complexity and its amount grew. Crystal Decisions couldn't fix those issues in version 8 and just advised us to move on to a new version of their product.
Now we need to make decision:
If you go for open source then you could at least do a quick bug fix yourself, so this option is very tempting. Unfortunately I am not aware of any open source reporting packages that are not Java and could offer as much functionality as Crystal Reports do. That includes advanced groupings based on a rich library of math and string functions fyi.
First off, I'll state that I do work for Business Objects.
.NET (which is how most of our RDC customers upgraded). Unfortunately, this is a completely different API from RDC. The good news is that the reports format itself is backwards compatible.
Version 8...that's almost six years old (quite old in terms of reporting technology). Are you developing with Report Designer Component (RDC)? We currently support report modification through something called a RAS API, which might suit your needs. It can be accessed through
I'm not in sales, so I can't tell you how much it would cost compared to open source alternatives. All I can do is tell you that it can be done.
We were using Jasper Reports with IReport and OpenReports for about a year until management got jumpy and not being able to hire anyone with Jasper expereince and migrated to Crystal.
From my expeience it was great. The only thing it didn't do for us was Cross Tab reports but that was added after we'd migrated to Crystal. It's been around the longest and has a fairly nice base of third party apps. I had a look at some of the other solutions but at that time they were still in Alpha. It's nice to see that they've made lots of progress.
So personaly I'd recommend checking out Jasper for a day and going from there.
JasperReports has worked well for me in many situations, and the report file format (XML) is easy enough to work with, even without a designer front end. Performance in most use cases is respectable, and I didn't have to jump through a lot of hoops to get things running. Whenever I need "traditional" reporting, JasperReports is my first choice.
My current company is in the process of migrating away from Actuate e.Report, which has basically (but unofficially) been EOLed. For example, it'll run under Java 1.5, but every report logs an IOException during generation, and no fix is planned. Performance on large documents (read 1k+ pages) is unusable, and gets significantly worse as the page count increases (not exponentially, but worse than linearly). Oh, and don't plan on your users editing the RTFs it spits out - everything uses absolute positioning within the document, so the page doesn't reflow.
I spent some quality time with BIRT last month, but wasn't terribly impressed. Installation wasn't painless, and their underlying model assumes that your data is a flat, relational table. Our data is hierarchical in nature, and we would have had to either flatten it, or use tons of sub-reports to accomplish our goals. Additionally, the options for output format are pretty limited compared with other solutions.
We ended up setting with Windward Reports, for two main reasons:
1. They assume hierarchical data instead of relational.
2. Their design front end is any RTF editor, and produces editable RTF results (and can still output to HTML, PDF, etc).
Performance with Windward has been an order of magnitude better that e.Report in our worst cases, and they've been quite good about implementing minor new features that we needed.
A couple issues:
1. They're not open source, and are relatively pricey, especially when you're an Application Service Provider.
2. The code that is open (such as thier data adapters) has a strange license, and hasn't been actively cleaned up in a while. Their license requires that you submit any non-company-specific improvements made to a data adapter back to them.
3. Their documentation is not up to date with their latest feature set, so be prepared to look at change logs, or ask questions on their forums. On the other hand, their tech support has been excellent.
We considered a number of other innovative reporting solutions as well. Just make sure that the reporting solution you pick actually meets your data and user's requirements, and don't be afraid to look beyond the "standard" reporting systems if you have non-traditional needs.
Scott Severtson
Senior Architect, Digital Measures
Wow, my first accepted submission :) At last, an excuse to read Slashdot at work tomorrow!
I kept the submission fairly general, to avoid steering the discussion in any specific direction. Here are a few more details of our situation:
We're a small-to-medium business, and our reporting needs are relatively modest (at the moment - we are steadily growing). I would say no more than 10-20 people need to generate reports. Our software department is also quite small - we have a fair amount of in-house Java expertise, but no one who actually knows Crystal Reports. We're also using an old version, and the reports themselves are out of date. Our choices are to invest in a new version of Crystal, the time for one of us to learn it, and rewriting the reports anyway - or choosing an open-source Java solution and hope for the best. The constraint, as always, is very limited manpower...
Any feedback is welcome - I've seen some very good posts already, I'll have to read all the comments tomorrow in detail.
Thanks!
ClutterMe.com - easiest site creation on the Net. Just click and type.
Though its not open source, I would recommend ActiveReports. Extremely flexible, even gives you a drawing API, and its totally isolated from the backend (unlike crystal and such) - you just hand it a dataset (in .net) and off you go. In my consulting days, I swore by it. Very simple and robust, also quite affordable. Just my $.02 .
Drinking habits can be dangerous. You can choke on the cloth and the nuns will wonder where their clothes are.
Well, mostly this is true. I have several reports from CR5 days, that have had small modifications to them over the years, then saved as the newer format. After so many saved as,this will cause the report to not work like the previous version. What I've had to do to get around this was to create a new blank Crystal Report, in my last case in XI, recreate all the db connections, gather all the tables, and recreate all the links. Then, start copying over elements from the old formatted report to the new one. The new report will work just fine after that point. So, not sure what the differences are between formats that cause issues with tables and linking... What would be really cool would be the