SQLServerCentral Article

Microsoft Reporting Services 2005 Features and Enhancements


With the latest release of SQL Server 2005 comes the new and revamped Microsoft Reporting Services 2005. In this article I will give an overview of enhancements, which have been included in this new release, particularly those which are related to Report Programming.

Report Development Environment

From this release onwards Microsoft Reporting Services reports are created using the

environment named SQL Server Business Intelligence Development Studio, which

is a subset of Microsoft Visual Studio 20005. This is installed

as a Program group when you install SQL Server 2005 Reporting Services.

Click on this program group and open up the Business Intelligence Development Studio.

Click on File-->New and you are presented with the "New Project" dialog box.

Here you can select the template which you want to work on. In SQL Server 2005 you

can not only design reports using the Business Intelligence Development Studio but

also DTS Packages (now called Integration Services), as well as Analysis Services

Projects. We will select the "Report Server Project" icon. Name the Project and click OK

Right click the Reports icon in the Solution Explorer and right click the "Add new

item..." menu. The "Add new item..." dialog box for is displayed. Select Report and name the report, then click Add.

I will use one of my already prepared report stored procedures for this report. This stored procedure takes in two parameters:


    (type datetime)


    human_resource_id (type int)

Now lets see what new features have been added to Reporting Services 2005

Multi-Value Parameters

Nothing much has changed since SQL Server 2000 Reporting Services as far as adding a dataset is concerned so I will skip that

section and will jump right ahead to the interesting part.

Once the report designer has been loaded, right click in the top left corner of the

designer and click "Report Parameters...". The Report Parameters dialog box is shown.

Right away you notice that now you can have Multi-valued parameters. This is a huge

improvement from previous versions of Reporting Services where you could not define

a parameter as multi-valued

I will set my second parameter ,human_resource_id, as multi-valued and will pick it up from another dataset. Also notice that the period_start_date parameter is

set to DateTime datatype. This is nothing new as compared to previous versions since

we could always set a parameter's type on this page. However, this will have a very

pleasant looking effect once you switch to Preview mode.

Click layout and drag some fields from the dataset. Now click preview and notice

how there is a Calendar icon next to the period_start_date parameter field!

Also note how the multi-value functionality has been implemented


The Expression Editor has been completely rewritten to better serve the needs of developers. Intellisense has been added to the Expression Editor as well a tree view of all the common functions which can be used while writing report expressions. The functions themselves are nicely categorized to make it easy for the developer

to pick the one he/she wants. Also note that Expressions now support a whole range of Operators as well

Selecting an item in the middle pane shows a brief help in the right-hand pane describing what the functionality of the selected item is.Also, note the red wavy line underneath the expression: the expression editor now parses the code on the fly and visually notifies you of code errors.

One thing I missed, though, was

the fact that when I typed Code. , I did not see the name of my custom function

in the Intellisense list for some reason. It would be great if this functionality

is added to the expression editor.

End-User Interactive Sorting

Another goodie which comes with the new version of the Reporting Services is the

ability to give your end-users the ability to sort on the report data. This is easily

implemented by following the steps:

  • Add a table to your report designer ( End-User sorting can only be added to 'data

    regions' i.e. report items which display repeated rows of data. Examples are table,

    list or matrix)

  • Add fields from the dataset to the details section
  • Type in a name for the first column in the table
  • Right click the text box for the header and click "Properties"
  • Click on the "Interactive Sort" Tab
  • Check the "Add an interactive sort action to this textbox" checkbox. The ""Sort

    Expression" dropdown becomes enabled

  • Select the field you want to sort on when the user clicks the Sort button on the

    report. Click OK

Now when you preview the report you will see two small arrows next to the column name which you selected for sorting. Click on the arrows and the report data will be sorted

Printing Enhancements

Remember we always wondered how to change the layout of the report from Landscape

to Portrait? Earlier one had to go in to Report Properties and flip the Page Width

and Page Height with one another on the Layout Tab. You can still do that, however, there is a nice

little icon called (you guessed it!)Page Setup in the Preview mode available with

this release of Reporting Services


These features may be small additions to the tool but they go a long way

in increasing developer productivity. I hope that Microsoft will keep adding more features to

Reporting Services in the future. It would be really wonderful

if Microsoft can 'port-back' these features to Reporting Service 2000.

This will be a huge benefit for all those report developers who realize that

certain for-granted features (like Intellisense) are missing from the SQL Server

2000 Reporting Services tool but cannot upgrade to SQL Server 2005 for various reasons.

Happy Reporting!


4 (3)

You rated this post out of 5. Change rating




4 (3)

You rated this post out of 5. Change rating