I never thought I’d say this, but working with SQL Server Reporting Services (SSRS) has taught me a valuable lesson…

It doesn’t matter what report engine you use, they all have their quirks.

I have a Crystal Reports background thanks to the ERP system that I used to support. I learned how to work with it inside outside upside down. It got to the point that I knew how to get it to do what I needed, no matter how obscure my end users got with their requests. It was a good thing.

Now I’m in a SSRS environment, and I curse my unfamiliarity with this report builder. I have to keep reminding myself that it’s a Microsoft tool – so many options that I’d be looking for in context menus are probably hidden in toolbars. For example, I was looking on doing conditionally-formatted row backgrounds, and I eventually found it in a toolbar – as soon as I reminded myself that it’s a Microsoft product.

But then there’s this other maddening (lack of a) feature. Why can I create an expression for my tablix’s sort field but I can’t use an expression to specify the sort order?

And what’s this “A to Z” and “Z to A” sorting terminology? Who are they designing this tool for? As a database admin and a developer, I would know ASC and DESC or even ascending and descending. Dates sort on their date type, numeric types in a numeric order… and neither of those are handled the same way as a character sort. Is the report converting all of its data to strings and literally doing a character sort? Nope – it is sorting ascending and descending. Can SSRS get an update so that it accurately represents the sorting? Is it smart enough to possibly detect the data type of a field and show “highest to lowest” for numbers and “earliest to latest” for dates?

As I continue to work with SSRS, I hope my complaints will subside. But there are some quirks that, in my opinion, make it worthy of the SUX appearances.