Standardizing and Centralizing Report Design (or: creating style sheets for reports) Part 1: The possibilities

While SQL Server 2011 (Denali) is at horizon, bringing up many changes in the way reports will be developed, Developers using SQL Server 2005, 2008 or 2008 R2 are still faced with on problem from the very first report on: How can I make not only development easier by having a template for reports at hand, but also, how to manage it.

Whereas in the area of webdesign, it is absolutely common to have a (cascading) style sheet to be referred to in all website-documents, in reporting services this concept does not exist.
While this is very annoying and it seems that it should be easy to implement at first, one has to remember, that Reporting Services does not just render to html, but at the same time Reporting Services have to be equally prepared to render Reports to Excel-Files, pdf-Files, TIFF-Image-Files, among others. So using the same technique as websites do, would simply to narrow.
There is a case at Microsoft Connect, where you can vote on this feature to get implemented in an upcoming version: http://connect.microsoft.com/SQLServer/feedback/details/253976/add-style-or-stylesheet-or-template-to-reporting-services-reports

In short: In Reporting Services there is no such one thing as ONE and only style sheet that does all magic for you.
This blog-series is intended to show you the existing techniques, and how to combine them. In the end your effectiveness in creating an managing Reports style-wise can be improved by a magnitude. But: there is work to do beforehand.

I spend quite a while, reading other blogs, the rare documentation and doing my own tests. Finally I had the honor of presenting a whole session on this matter at the European PASS Conference 2009.

In the following posts I will concentrate on the existing techniques I identified as the most useful techniques and combination.

Those are the techniques I will focus on:

The Basic Techniques:

Custom methods:

  • Using Custom Code
  • Using an Assembly
  • Using plain T-SQL

Combining techniques:

  • Style Template + Layout Template
  • Style Template + Custom style + Layout Template

Reporting Services 2008 R2 techniques

  • Shared DataSet
  • Report Part

 

I also tested using XML-Files as well as making a webservice-call to get Style-data, but this turned out to be rather pathological and is therefore left out from further consideration.

In the next Part of the series, I will show how to create and use a Layout-Template.

 

Andreas

Sarpedon Quality Lab