Saturday, December 01, 2007

Report Designers For SQL Server 2008 and Visual Studio 2008 - CTP5 and future

I've seen a lot of questions and misunderstanding as to how these products are bundled/SKU'd and what Microsoft's plans are for when SQL Server 2008 RTMs, and what designer will be supported by what IDE. So I'll try to explain, to the best of my knowledge, how these different permutation of SQL and VS versions work together.

Visual Studio 2005/2008 is an IDE shell that can include several dev environments, such as C#, C++, VB, ASP.NET/HTML, RDL/RptProj, etc.

When you install SQL Server 2005 or 2008 (CTP), and specify the client/dev tools option, the setup will check if you already have a SKU of Visual Studio 2005 installed, and if you do, it will only need to install the Report Designer and RptProject support into your existing VS shell.

However if you did not have VS 2005 installed, the setup for SSRS will install the VS shell, and the Report Designer and RptProject. This shell with only support for SSRS (and SSAS, SSIS, if you were installing those as well) is branded BI Development Studio (BIDS).

BIDS is not really a different application than Visual Studio 2005. You can notice, because when you click the BIDS shortcut on your Start/Programs menu, it will show the VS 2005 splash screen. YouBIDS Shortcut Target can also check the target path of the shortcut and notice that it's the same as the target path of your original VS 2005 shortcut (if you did have VS prior to installing SSRS).

When you're developing reports in BIDS/VS, you don't need to have a Report Server installed on that machine (this would be called the "client tools" only installation of SQL Server Reporting Services). You do need a Report Server if you plan to deploy your reports after development.

With regards to VS 2008, I believe that unfortunately the current November CTP5 does not integrate the BIDS/Report Designer into the IDE. So, in other words, you cannot yet use VS 2008 to develop SSRS 2008 Reports.

You will need to either have already installed the VS 2005 IDE, so SQL 2008 can install the report designer bits, or just let the SQL Server 2008 setup install BIDS (which is still the 2005 IDE).

**Note that Microsoft released an update for support of SQL Server 2008 in VS 2005 (you'd receive errors when trying to connect to a SQL 2008 DB from the Server Explorer). This is NOT related to the report designer.

Another thing to keep in mind is that for SSRS 2008, there's a new RDL schema (with the new Tablix report item, and other neat stuff), but as of this CTP5, you can only work with this schema from the Standalone Report Designer preview, that is installed with the CTP5. If you try to open an RDL created from this designer, using BIDS/VS 2005, you should receive an error, because you can only work with 2005-schema RDLs in BIDS/VS 2005.

According to the SSRS team, once SQL 2008 RTMs, they will have integrated the codebase of the new designer, found in the standalone designer preview, with VS 2008/BIDS. It may even be as soon as the next CTP6, but until then, if you want to create brand spanking new SSRS 2008 reports, then you must use the Standalone Designer Preview. If you deploy 2005 RDLs to a SSRS 2008 Report Server, they will be "upgraded" under-the-hood to 2008 in order for the reports to be usable in that version of SSRS.

Not unlike when SQL 2005 was released, and you were forced to convert your SSRS 2000 reports to the new 2005 schema in order to work with them in VS 2005/BIDS, or be forced to have VS.NET 2003 installed to continue to support the SQL 2000 schemas; so will you have to follow the same rules when going from 2005 to 2008. Unfortunately, that's a limitation in how the Report Designer in VS targets a specific schema version for RDLs, so it can't work with multiple schemas.

If you want this feature, go to the Microsoft Connect site, and enter your feature request for RDL version multi-targeting in VS 2008 :-)

I hope this clears up any misunderstanding.

So to sum it up:

Current November CTP5 - has 2 designers: BIDS and Standalone.

- standalone designer preview gives a little taste of what's to come, and is the only way to work directly with the new 2008 schema and features (e.g. Tablix, etc...).

- BIDS has not yet changed, and will work with RDLs in the SQL 2005 schema only, but once you try to deploy to a SSRS 2008 CTP Report Server, the server does an under-the-hood upgrade of the RDL to 2008 so it can store it in the DB.

Future CTPs and RTM Plans - 2 designers: BIDS/VS 2008 for developers, and a Standalone (with Office 2007 Ribbon UI) for Information Workers who don't "live" in Visual Studio.

- standalone designer and VS 2008/BIDS will provide much of the same functionality when developing reports, with the only difference being that BIDS will be hosted in a VS 2008 shell, while the standalone designer will be, well, standalone. And it will have a Ribbon UI (from Office 2007), so non-dev folks don't freak out, but rather feel familiar and comfortable while developing their SSRS reports (this will not be the same as the Report Builder!!!).

If you have SSRS 2005 reports, and you don't wish to convert them to 2008, DON'T OPEN THEM in Visual Studio 2008. For all your SSRS 2008 Reports, you will need the Standalone designer, and eventually either that or VS 2008. You will need to have both versions (2005 and 2008) of BIDS/Visual Studio installed side-by-side (which is supported by Microsoft), if you have to support both RDL versions.

Cheers!

4 comments:

Jonas Rosqvist said...

This wouldn't be any problem if it wasn't for the fact that my customer uses custom dataextensions. Will this work with BIDS. Can I open an rpt-project and the custom data extension in BIDS. If that were possible I could develop the rest of the application in vs 2008.

Thiago Silva said...

Jonas,

You won't be able to use BIDS (VS 2005 with rpt designer bits only), since the only project type you can open there is a RptProj. And you won't be able to use VS 2008 for reports until the next CTP comes out.

My recommendation, since BIDS gets installed with the license of SQL Server 2005, you can use that when working with report design. Then use VS 2008 for you custom data extension (CDE) C#/VB project. Once the CTP6 comes out, you can integrate the report project back into the same solution file as the CDE, and you should be good to go on VS 2008. There's no official time line from MS on when the CTP6 will be released, but it's likely it will be by end of January sometime (don't quote me on that though).

Anonymous said...

This is an interesting situation. We have a client using SQL Server 2000 Reporting Services so we have Visual Studio 2003 installed to maintain those reports. We also have another client using SQL Server 2005 Reporting Services so we also have Visaul Studio 2005 installed to maintain those reports. I just installed Visual Studio 2008 on my machine. I count 3 development environments thus far. I guess if i wait another year or two i might also have Rosario installed on my machine. I would HOPE/THINK Microsoft would either need to allow editing of multiple RDL's or force all of our customers to upgrade. A bit of tongue and cheek i know but seriosuly, this needs addressing. I had a look around on MS connect but couldn't find anything related. You might have been joking about lodging a connect feedback but it might just be worthwhile. I'll vote for it!!!

Cheers
Tim (Mr_T)

Bob Armour said...

Any updates on the status of this issue?
I've recently opened a legacy project, to do some modifications, and find that VS2008 won't open the rptproj file (It was created in VS2005).
Despite the fact that I can open the project in VS2005 (Thank god I still have it installed), I'd like to be able to have all of my projects in the same solution, to avoid having multiple applications open.