SQL Server Reporting Services: Should support include files

It’s common to want to embed custom code within reports in Reporting Services. One thing I don’t like is the inclusion of anything that looks like business logic directly in the reports. However, formatting functions, etc. seem totally appropriate.

If I want to embed custom code within Reporting Services though, I currently have two options. One is to embed the code in the report, the other is to reference an assembly. Each of these has drawbacks.

If I embed the code in a report (say just some formatting functions), I have to edit every report if I ever change that code.

The answer has been to use an assembly instead. The downside of placing code in an assembly is that I now have a deployment issue. It’s very easy to deploy an RDL report file but quite another thing to deploy a .NET assembly that is referenced by it.

What I’d really like to see is an in-between option. I think a good solution would be to allow me to have another node in Solution Explorer, called something like “Shared Code” or some similar name. I could then have sets of code that I might want embedded in various reports. Then in the properties of a report, I could just specify that which of these pieces of code I’d like to have included (and embedded) in the report.

This would give me the benefit of only a single place to need to write/update the code but no downside on deployment as the code would simply be embedded in the RDL files.

I’d love to hear your thoughts on this.

2010-02-19