Click here to Skip to main content
15,888,579 members
Articles / All Topics
Technical Blog

Why I Would Not Recommend SSRS

Rate me:
Please Sign up or sign in to vote.
4.25/5 (3 votes)
7 Sep 2013Apache3 min read 8.5K   3
This post discusses why I would not recommend SSRS.

I’ve been putting this off for a while, and it’s been a couple of months since I had actively worked with SSRS reports on a daily basis.

Here are my main points of frustration with the product. This was an older version of SQL Server (2008R2, if I remember correctly), but I don’t believe the report designer was changed significantly in newer versions.

First and the most annoying problem with the report designer is that it is conceptually very far removed from the underlying RDL document. This leads to very unpleasant consequences. For example, this error appears to be common:

Innermost group does not have a grouping cell"

What is a grouping cell and how do I create one? There is no such concept in the report designer. There is absolutely nothing one can do on the designer level to fix this error. And it does make grouping difficult and painful.

Another manifestation of the same problem is “Tablix header”. There is no way to explicitly say “this row is in Tablix header”. Most of the time the designer will figure it out by itself, but if it made a wrong decision, there is no way of fixing it, short of opening the RDL file and messing with it.

Speaking of which: if you manually mess with RDL file, you are quite likely to get NullReferenceException when you open it in the designer. Good programming practice tells us that the program should be resilient to malformed input and provide meaningful error messages. Unfortunately, the report designer is far from this goal.

And when you go beyond designer, there are rendering bugs.

One big problem I encountered was docking. Due to groups of repeating rows or columns, entities in the actual report may have different heights and widths than on the designer surface. If you have several entities on the page (e.g. a table and some charts), they will have to be moved relative to each other. There is no way to explicitly tell SSRS where to put things in this case. E.g., if you have this layout in the designer:

ssrs1

your report may end up looking something like this:

ssrs2

or even like this:

ssrs3

Depending on the items relative position, SSRS guesses how to handle the docking, and it does not always guess right. I would love to give it some hints, but there is no way to do that.

Another problem was headers over groups of repeating columns. Setting up a header over a column group is painful, but possible. If your design looks like this:

ssrs4

You would hope that the end result would be:

ssrs5

But in reality, it is:

ssrs6

SSRS does not realize that it has extra width now and there is no need to make the header rows taller.

Yet another problem is that reports look different in the designer, in HTML, in Excel and in PDF. Sometimes you would create a gap row 2 pixels high only to find that in HTML it is stubbornly displayed as 10 pixels and not a pixel less, or something of the sort.

The bottom line is: SSRS is good for basic reports, but more complicated scenarios lead to trouble. Just count the number of times I used the word “painful” in this post :)

This article was originally posted at http://www.ikriv.com/blog?p=1362

License

This article, along with any associated source code and files, is licensed under The Apache License, Version 2.0


Written By
Technical Lead Thomson Reuters
United States United States
Ivan is a hands-on software architect/technical lead working for Thomson Reuters in the New York City area. At present I am mostly building complex multi-threaded WPF application for the financial sector, but I am also interested in cloud computing, web development, mobile development, etc.

Please visit my web site: www.ikriv.com.

Comments and Discussions

 
GeneralHow do you define a workaround as opposed to a development pattern? Pin
AdrianNichols2-Jun-14 23:29
AdrianNichols2-Jun-14 23:29 
GeneralMy vote of 2 Pin
sagarok23-Sep-13 23:10
sagarok23-Sep-13 23:10 
GeneralRe: My vote of 2 Pin
Ivan Krivyakov24-Sep-13 2:40
Ivan Krivyakov24-Sep-13 2:40 
Dude, most problems in life have workarounds. "Don't use SSRS" would also be a workaround.

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.