Friday, March 18, 2005

SQL Server Reporting Services

For the past week or so, I've been exploring SQL Server Reporting Services. My only impression (coming from someone experienced in both Access report writing and Crystal Reports): WOW!

First off, if you have a license to run SQL Server (Standard or Enterprise), then you have the license to install Reporting Services onto your database server. It's now part of the SQL Server package, not a separate application that's licensed by itself.

Having said that, though, the recommended architecture is to have Reporting Services run on its own machine. This way, the report processing does not bog down your [production] database server. The caveat here is that you'll have to pay the boys in Redmond for another SQL Server license.

The product is built upon .NET Web Services. Because of this, you'll need the .NET Framework v1.1 installed, as well as IIS (for ASP.NET) on the reporting server.

If you're brave, or have complicated requirements, then you can perform all report processing via the Web Service. However, for integration with existing [legacy] applications, or to simplify development of new applications, there is a feature called "URL Access". Basically, this provides a hyperlink that links to a web-based report viewer running on the Report Server. The user clicks on the link (which also includes the report path and name), and is taken to the ASP.NET web site where the report is displayed.

Reporting Services offers a subscription feature. Maybe you need a report emailed to you every day detailing activity from the previous day. Set up a subscription for that report, and you'll have emails awaiting every morning. Cool feature!

Even though this is a SQL Server product, don't think that you're limited to just SQL Server databases. Because this is a .NET application, you're actually limited to anything that ADO.NET can get at (which is just about any data sources, including custom ones if you want to do the coding). So, if you need to query that Oracle database that contains your JDE sales data, then go for it!

I don't think that Reporting Services is necessarily a "CrystalReports" killer. Reporting Services does act as a server, so with that in mind, there still could be a use for ActiveReports or CrystalReports. But, I won't be using them anytime soon in my designs!