The first version of reporting services was released as a separate download for SQL 2000. It was in the SQL 2005 version that it was integrated in the SQL Server installation media and became an optional feature of the SQL Server setup.
I remember that when I first installed SQL Reporting Services 2000, the setup was very complicated and required touching some XML files manually. It was in the 2005 version that it included a very nice application called Reporting Services Configuration Manager to help set up and deploy, which has been improving with every version to make this task much easier.
The 2000 and 2005 versions required Internet Information Services (IIS) to be installed on the server to be used by the report manager and report web services. However, the 2008 and 2012 versions come with their own HTTP server and don't make use of the IIS.
There is an important difference between the versions of SQL Server and Visual Studio. Basically, the last version of SQL 2012 is one version behind Visual Studio as currently there is no support for the Report Server Project Templates in Visual Studio 2012. The following table shows this discrepancy:
SQL Server |
Visual Studio |
CRM Server |
---|---|---|
2005 |
Visual Studio 2005 |
4.0 |
2008 |
Visual Studio 2005 |
4.0 and 2011 |
2008 R2 |
Visual Studio 2008 |
4.0 and 2011 |
2012 |
Visual Studio 2010 |
4.0 and 2011 |
Dynamics CRM 2011 was originally designed to work with Windows Server 2008 R2 and SQL Server 2008 R2. Installing Dynamics CRM 2011 on Windows Server 2012 with SQL Server 2012 is very challenging; Daniel Cai, a fellow Microsoft MVP in Dynamics CRM, has written the necessary steps and workarounds in his article at http://danielcai.blogspot.com.ar/2012/05/install-crm-2011-on-windows-server-8.html.
As we can see in the http://support.microsoft.com/default.aspx?kbid=2791312 link, there is upcoming support for Windows 2012 with the Update Rollup 13, which will be available on the Windows Update.
In this book, I have decided to use the latest Microsoft versions, Windows Server 2012 and SQL Server 2012, to take the benefits of the latest features and improvements. I will mention in this book whenever a specific feature is different from the previous versions, as some implementations might still use the 2008 R2 versions.
At the time of writing this book, CRM Online is using SQL Server 2012.
Some of the benefits of using SQL Server 2012 with Dynamics CRM 2011 are as follows:
Support for the mobile client with the SQL Server 2012 Service Pack 1
Alerts directly from the reporting-service control
Better performance
There is also another version of SQL Reporting Services that uses the same concept but is hosted in the cloud of Windows Azure; however, this version can't be used with Dynamics CRM directly.
Regardless of the edition, SQL Reporting Services has four main components:
SQL Server databases
Windows Service
Report Manager website
Report Server Web service
There are two databases that are used by the SQL Reporting Services—ReportServer and ReportServerTempDB. All the reports and configurations are stored in the first database, and the second one is used to store temporary data and improve the service performance by caching the user sessions. Notice that these databases' names are set by default and a Database administrator (DBA) might change the names using the Reporting Services Configuration Manager.
The Windows Service is used to automatically generate scheduled reports that can be scheduled with the Report Manager website or the CRM interface, as we will see in Chapter 8, Advance Custom Reporting and Automation. You can see this Windows Service in the Windows Services tool with the name of SQL Server Reporting Services (MSSQLSERVER), where MSSQLSERVER will be the name of the SQL Server instance you are running.
The Report Manager is the web-user interface in which a user can see, create, and run reports by usually going to a URL such as http://<servername>/Reports
. From this interface, the administrator can also give and assign permissions to the reports as well as configure and run the reports directly.
The Report Server Web service is the web service end point where a developer can integrate with other custom applications. Usually, by going to a URL such as http://servername/ReportServer
, a developer can create another user interface to do everything the Report Manager website can do, but with a custom interface or application such as a Windows or WPF app. This is the URL that Visual Studio and the Report Builder use to connect and interact with the reporting services to run and deploy reports. This web service is very useful if you want to automate some of the export report features, such as to automate the generation of a PDF document by executing a report. An example of one of the end points exposed can be found at http://<servername>/ReportServer/ReportService2010.asmx
; there are other ASMX files for compatibility with previous versions, such as ReportService2006.asmx
and ReportService2005.asmx
.