Custom Report Item

Custom Report Item Runtime Control Architecture

Custom Report Item in Reporting Services 2005

This server extensibility feature introduced in Reporting Services 2005 (RS 2005) provides the ability to develop custom report items for embedding in reports. Examples of resources available that provide insights into how one can build custom report item solutions include: documentation overview, sample, and a great MSDN magazine article by Teo Lachev.

Over time, several independent partners utilized this extensibility mechanism and developed nice 2005-based Custom Report Item (CRI) controls, such as Dundas Visualization Products for Reporting Services, various barcode controls, and even some that take RTF and draw it as image into reports.

Custom Report Item in Reporting Services 2008

RS 2008 introduces a new RenderingObjectModel and an on-demand paradigm for processing and rendering reports. Consequently, also the CRI runtime control interfaces and how the control interacts with the new on-demand RenderingObjectModel have changed. An updated CRI-Polygon sample is available for RS 2008.

Using 2005-based Custom Report Items in Reporting Services 2008

I have seen two common questions regarding the support of 2005 CRIs in RS 2008:

Q: What if you bought or developed a 2005-based CRI runtime control - can you run those old reports after upgrading your report server to RS 2008?
 
A: Yes, running 2005-based CRI runtime controls on a RS 2008 server is supported. Your old 2005-based reports will run on RS 2008 without modifications - however make sure to verify that the Web.config of your 2008 report server contains an assembly binding redirect for the Microsoft.ReportingServices.Interfaces.dll as specified in KB 955795.

Q: What about 2005-based CRI design time controls?
 
A: 2005-based CRI design time controls work with Business Intelligence Development Studio 2005 (BIDS 2005) only. You can continue to design reports with BIDS 2005 and deploy directly to your RS 2008 server with the 2005-based CRI runtime control installed.
For BIDS 2008 however, the CRI integration interfaces have changed, and you will need 2008-based CRI design controls to develop reports utilizing the full 2008 feature set (e.g. tablix) and 2008-based CRIs.

Additional information about upgrading a report with custom report items is provided in the documentation.

Special Case: Deploying 2005 Reports utilizing Dundas CRI controls to a RS 2008 Server

In short, your existing reports will run on RS 2008 without modifications. You may no longer need your 2005 CRI controls on the RS 2008 server in particular cases, as explained below.

With the acquisition of the data visualization products of Dundas Inc., reports utilizing 2005-based CRI controls from Dundas generally will be automatically upgraded on-the-fly into native 2008 charts and gauges in RS 2008. In that case, your old reports will run as native 2008 reports when deployed to a RS 2008 server.

If your 2005-based reports with Dundas CRIs utilize certain features, such as annotations or custom code, the reports won't be automatically converted into native RS 2008 charts/gauges, but instead remain 2005 reports that are executed in a transparent backwards-compatibility mode1 of the processing engine in the RS 2008 server. In that case, or if you use the Dundas Maps or Dundas Calendar products, the reports will automatically run on the RS 2008 server, but you still need your 2005-based Dundas CRI runtime controls installed on the server.

Alternatively, Dundas is releasing several new 2008-based CRI design and runtime controls. You could upgrade your existing 2005 reports in BIDS (with the 2008 Dundas controls installed) to 2008 reports, utilize all the new 2008 features such as tablix, and then deploy them as 2008 RDLs to a RS 2008 server. Please contact Dundas directly, if you are interested in that option.

The related posting about the enhanced ExecutionLog2 in RS 2008 explains, among other topics, how an administrator can utilize the AdditionalInfo.ProcessingEngine value to determine whether an old report automatically upgraded to 2008, or if the report contains a 2005-based CRI and therefore is running in the transparent backwards-compatibility mode of the processing engine.

Happy New Year!