Telerik Reporting Review

When it comes to using a Report Writer in my applications, I had heard talk for years that I should avoid Crystal Reports if possible. “It’s a behemoth.” Some said. “It’s more that you need.” “It’s frustrating.” Well up until recently I was able to remain happily ignorant of the power and fury that is Crystal Reports. And then I inherited an application that used it.

At first I thought, hey this isn’t too bad. It can do a lot of neat things. Sure it’s kind of unwieldy and all … Holy Mother what are all of these references I need to include in my project to make sure this all works?! Then the compilation errors started coming. Then the massive client installs of the runtimes. Then the runtime errors (SMAgentAPI.dll not found). And whatever you do don’t change the target .Net framework or the “bittedness” from 32 to 64 or the whole wheel of insanity starts spinning again.

I had quickly had enough.

I considered reverting to the native .Net Report Writer, which I’d had some experience with – also mostly frustrating. Between the convoluted way data sources are added to the report (and the bug that requires you to modify the report’s XML to correct issues) and the requirement that Internet Explorer be used for any decent resulting HTML output, I was ready for another alternative.

A little research led me to Telerik Reporting. The website looked good, with an active support forum, quarterly updates, and a good feature set. One feature that stood out was the ability to convert Crystal Reports report definitions. Hey, that could save me a lot of time!

The trial download process was intuitive and attractive. Before you download you must create an account on Telerik’s site, but that allows them to know exactly which products you have. This is helpful later when you login in to Telerik’s portal and see your licensed products, trouble tickets you’ve submitted, forum posts and replies.

The Telerik Installer

While the product downloaded and installed, I read through the online documentation at http://www.telerik.com/help/reporting/overview.html. Follow that link and you’ll see their product is very well documented, making it quite easy to get up and running quickly. Later I needed to search for some information in the help site and found it useful as a reference as well.
Soon I was ready to begin my first report. I wanted to convert that existing Crystal Report if I could, but quickly ran into a roadblock: The report I inherited was in a version of Crystal Reports that was more recent than Telerik’s converters could handle. A quick search of the support forums found this:
Note: Crystal Reports for Visual Studio 2010 is not supported as the CrystalDecisions.Enterprise.Framework and CrystalDecisions.Enterprise.InfoStore assemblies are no longer shipped.

Telerik Report Wizard – Convert from Another System

A note from Steve on the Telerik team helped put it in perspective as well:
"The converters are just a helper utility we did out of good will to save users some time. They do not guarantee a one-to-one complete conversion and you've already notices that there are some parts (items/sections) that have no analog on our end and vice versa. All of the converters are created before the introduction of Table/Crosstab item and have not been updated to reflect these changes yet. Thus currently reviewing and fixing the converted reports manually is highly recommended."

So, even if I had been able to convert the Crystal Report, there would have been much work to perfect the report. Maybe starting from scratch is the best option after all.

And it turns out it isn’t a bad option whatsoever. When you add a new Telerik report to your project you can walk through Telerik’s wizard. This gets the report’s data source and styling up and running quickly. One quirk of the wizard is that it always creates a stylesheet for your report, which you may not want. I’ll explain more about that in a second.
The Report Designer surface is an absolute pleasure to work with. As expected you can quickly drag fields from the Data Explorer on to the report and add the usual assortment of report objects from the Toolbox, including a BarCode object which I haven’t seen in other products.

By far the best feature of Telerik Reporting in my testing was its intuitive use of CSS-Like Styles. Rather than formatting each object individually, which can be a major pain when you have a lot of them on a report, you can create a StyleSheet on the report with named styles. You can then set the StyleName property of the object and it will automatically get the features specified by that Style. If you’re thinking “Yes, that’s exactly how it should be!” you may be surprised to know it’s not that way in other Report Writers.

Once you’ve created a StyleSheet for a report, you can export that to an external file. Other reports can then use that external stylesheet, creating consistency across your enterprise. Fantastic!

But as I mentioned earlier this actually creates a little bit of work for you when you create a report using the Wizard, because the Wizard automatically adds a Stylesheet to your report. You can attach the external Stylesheet to your new report, but the internal StyleSheet will override those settings! So you have to manually remove all of the entries from the internal StyleSheet to get the consistency across reports that you want. It’s not difficult or anything, but it’s a step you have to do. It’d be nice if there was an option in the Wizard to avoid creating it altogether.

I don’t really understand how “Panel” objects are supposed to work. I was able to use them to prevent fields from floating downwards as adjacent fields expanded to fit their content…sometimes. Other times it didn’t work until I cut everything out of the panel and pasted it back in. Does the order matter? In order to test the responsiveness of Telerik, I submitted a trouble ticket with this question. They promise a 72-(business) hour turnaround and it’s only been about 72 minutes so it’s too early to tell if they’ll deliver.

Attaching data sources to reports is excellent and clear, without the quirks of RDLC files of native .Net report writer. Passing parameters from the main report into the subreport was extremely intuitive. I especially liked how you could specify default runtime parameters .

Lastly, I had no difficulty deploying my reports to the client using the normal process. No compilation errors, no client runtime setups, no runtime errors. Everything worked.

I wasn’t able to test all of the features of Telerik Reporting, like attaching to BI Data Cubes or charting, but this product was a pleasure to use with only minor quirks. Anyone stuck using Crystal or the native .Net report writer should be able to justify the acquisition of Telerik Reporting by the productivity gains and loss of frustration that you get with it.

For more info, check the Telerik website: http://www.telerik.com/products/reporting.aspx


Posted

in

, ,

by

Tags:

Comments

5 responses to “Telerik Reporting Review”

  1. Eric Avatar

    Update: The Telerik Support Team did indeed answer my support question well within the 72-hour limit. The answer was correct and personalized (not a generic answer).

    Just to confirm it wasn’t a fluke I posted another question and the response time was even quicker. Very impressive support.

  2. Holly Avatar
    Holly

    Hello, Great article!

    I’m trying out Telerik Reporting (Q1 and Q2 2013) to replace crystal reports in a SCADA system we have.

    Did you do any performance testing with Telerik’s reports? Or have you heard any comments on Telerik’s report performance, or how to improve it?

    I use a sql query (and ODBC connect to my db) to populate a data source object, and then use that as the data source for my telerik report. My report is doing nothing fancy – no sub report, nothing – just getting the data and showing it on the report.

    The data though, can end up being 1 to 100,000+ rows, and result in 1 to 18,000+ pages – while it finishes, Telerik i taking upwards of 40 minutes. Meanwhile the crystal report inside my SCADA system will run the same amount of data in 6 to 18 minutes…)

    Thanks for any ideas, thought, suggestions you might have!

    -Holly

  3. Eric Avatar

    Thanks for the positive feedback, Holly. Wow, 18,000 pages! That’s certainly more than I’ve ever generated. Assuming the SQL call is the same in both instances, Telerik itself would have to be the bottleneck. I don’t know it well enough to suggest tweaks that might speed things up, except tricks that perhaps could speed up the rendering by breaking up the data into smaller sets?

  4. MaryAnne Avatar
    MaryAnne

    Have been researching and comparing Crystal Reports, Telerik , Stonefield Query , and several other reporting tools — just wondering if you have reviewed or had any experience with the Symtrax StarQuery suite — for example StarQuery for Excel. Current company reports are all in excel and it would seem to be an easier user-friendly solution than a solution requiring a lot of query or coding etc. It seems to me that reporting tools like Pentaho, JasperReports, Windward etc., would require a lot more techsavvy, and we are looking for something more intuitive, easy to get up and running without too much trouble. Any advice is greatly appreciated! Thank you.

  5. Eric Selje Avatar
    Eric Selje

    Hi MaryAnne,

    I’ve never heard of Symtrax StarQuery. I agree that standalone report servers Pentaho and Jasper do require a bit of tech-savvy, as do any solutions that are integrated into your .Net solution (like Telerik or Crystal Reports).

    Of the ones you mentioned, Stonefield sounds like the best possible solution. Standalone, easy-to-use, and exports Excel natively. Full disclosure, the guys at Stonefield are friends of mine and I’ve looked at their product but never have deployed it. You may be the perfect candidate for it though.

    Best wishes, and thanks for comment on my review!

    Eric

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.