Description

This article has step-by-step instructions on how to setup, configure and test SQL 2012 SP1's Reporting Services (SSRS) with SharePoint integration. There already exist a similar TechNet Wiki article, however, the steps provided there are fundamentally wrong. Out of respect for the original author, the article has been left there.  
I am also going to show how the SSRS with SharePoint 2013 can be setup in a two-tier environment, one with Windows 2012 server that has SQL 2012 SP1 and the other with Windows 2012 server that has SharePoint 2013. To install reporting services SharePoint mode as a single server form, Click Here.

Misconceptions

Before I walk-through the setup and configuration, I want to clarify some of the misconceptions and / or confusions. 

Do I need to install a separate SQL database for this on the SharePoint server?
No you do not. You can use the existing SQL server of your SharePoint farm to setup the SharePoint 

Does the SQL Server Integration application come OOTB?
No it does not. You need to install both Reporting Services - SharePoint and Reporting Services Add-in for SharePoint Products.

Reporting Services Configuration Manager does not give me the option to choose SharePoint Integrated mode. I only see Native. What did I do wrong?
You did not do anything wrong. This is by design. As stated in the MSDN article for 'Install Reporting Services SharePoint Mode as a Single Server Farm' . NO SETUP OR CONFIGURATION IS REQUIRED IN THE REPORTING SERVICES CONFIGURATION MANAGER. 




In SharePoint 2013's Central Administration's SSRS, do I need to add a URL for the Reporting Services Integration?
No you do not. You have already installed the SQL Server Reporting Services service application.

Installation

In this section we are going to install the Reporting Services-SharePoint and the Reporting Services Add-In for SharePoint products on the SharePoint application server using SQL 2012 SP1. I highly recommend you use the SQL Server 2012 SP1 - Full Slip Stream which is available at http://www.microsoft.com/en-us/download/details.aspx?id=35575

The steps to install in a  two-tier environment are very similar to a standalone environment hence I am going to refer to the ' Install Reporting Services SharePoint Mode for SharePoint 2013' article at http://msdn.microsoft.com/en-us/library/jj219068(v=sql.110).aspx,  and point out the differences in the steps.

Installing Reporting Services Report Server in SharePoint mode


In this step DO NOT INSTALL THE DATABASE ENGINE SERVICE. We already have a SQL server. I also recommend installing the SQL Server Data Tools since it is a very useful feature to build reports.
Below is a screenshot of feature selection.


Register and Start the Reporting Services SharePoint Service


Follow the steps as is. Focus on the important message which states as follows-


Create a Reporting Services Service Application


1. In SharePoint Central Administration > Security > General Security create a new service account for this application. 
2. If the Reporting Services - SharePoint and Reporting Services Add-in for SharePoint products have been installed correctly you should see SQL Server Reporting Services Service Application as shown below.


3. Choose the correct Database Server. In this example, we already have a separate SQL server, choose that one.

Activate the Power View Site Collection Feature


Follow the steps as is.

To add the Reporting Services to the web front-end of a SharePoint farm you can refer to http://msdn.microsoft.com/en-us/library/hh479775(v=sql.110).aspx

Setting up SharePoint site

I have already created a new site using the 'Business Intelligence Center' template. Below is a screenshot of that site's home page.


I also created a new document library and called it Reports Library. Go to the library and click on Library Settings as shown below.


Under General Settings, click on Advanced Settings.


In Content Types, Allow managed of content types, select Yes. Scroll to the bottom and click OK.


Now you should see the Content Types option in the Settings as shown below. Click on the 'Add from existing site content types' option.


You should be in the Add Content Types page. If the above setup and configuration steps have been followed correctly then you should now see the 'SQL Server Reporting Services Content Types'  option as shown below.


Select all three available content types and add them and then click OK. Below is a screen shot.


Now you should see the following in your Report Library Settings under the Content Types


Verify SharePoint Mode Installation

Once we have the SharePoint mode setup, we need to verify the installation. We are going to follow these steps to verify SharePoint Mode installation as described in http://msdn.microsoft.com/en-us/library/ms143773(v=sql.110).aspx  using the AdventureWorks Report Samples available on CodePlex.

Go to http://msftdbprodsamples.codeplex.com/releases/view/93587 and download the 'AdventureWorks2012_Database.zip. Unzip the file and place the MDF and LDF files in your SQL database folder which is similar to C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA.

Attach the AdventureWorks212_Data.mdf file to your SQL database. Below is a screenshot of what you database will look like.


Building the Report


On your SharePoint server open up the SQL Server Data Tools (aka Microsoft Visual Studio 2010 Shell) application which was installed along with the SharePoint integration features. Below is a screenshot of the application.


Before you begin using the application for the first time, you will need to specific the type of development. In my case I choose Business Intelligence Settings and click on 'Start Visual Studio'. Below is a screenshot.


You may see the following when Visual Studio is loading.


Once the application loads below is what you should see.


Click on New Project, under Business Intelligence click on Reporting Services, select Report Server Project Wizard. Give it a name and click Ok. Below is a screenshot.


The report wizard will walk you through the process of selecting the database source, building the query, choosing the reporting type and building the layout and format. Below are screenshots of the wizard.


In Select the Data Source, select Type 'Microsoft SQL Server' and click on Edit. Below are screenshots.



Leave the Data Source as is, type in the Server name. In my case the server name is contoso\SQL2012SP1. Once you typed in your server name, click on Refresh and then select the database name. If you do not see the list of database names or get an error means your account hasn't been given adequate permissions to the database. In this example, I had to go back to SSMS and give my account db_datareader access as shown below.


Now back in the Report Wizard I was able to see the list of database names as shown below. I selected the AdventureWorks2012 which I had attached previously.


I recommend you click on Test Connection and confirm. Below is a screenshot.


You will also notice the connection string as shown below. Check the 'Make this a shared data source' box and click Next.


Now we need to build the query. Click on the Query Builder as shown below.


The query designer can take a few seconds to load during which you will see the below.


Once the query designer is done loading below is what you should see:


Click on the Add Table option as shown below.


You will now see all the Tables, Views, Functions and Synonyms.


For this example, I am going to choose the Address (Person) table

Below is what my query looks like after adding and selecting the columns in the tables. 

You need to make sure you have the correct relationship columns selected for the query to work

Once the query building is completed below is what you should see


Click Ok. You should now see your Query string as shown below. Click Next.


Click the type of report format you would like. I have selected Tabular. Click Next.


Below is a screenshot of how I have built the groups in the table. Click Next.


Below is a screenshot of the table layout. I have opted to choose Stepped and selected the subtotals and drilldown options. Click Next.


Select your table style. In my case I have selected the Corporate style and clicked Next.


DO NOT MAKE ANY CHANGES HERE. SIMPLY CLICK NEXT


Provide a report name and click Finish. In my case I gave the name TestReport.


Now you should see a preview of your report. 


Click on the Solution Explorer to view the Reports.



When you click on the TestReport.rdl file you will see the Full Path. Make a note of that path since we will be using it shortly.

Setting up SharePoint 2013 site


I have already created a new site using the 'Business Intelligence Center' template. Below is a screenshot of that site's home page


Adding the Report Builder Report

I created a new document library and called it Reports Library. In this library, click on the Files tab and select the 'Upload Document' option as shown below.


Click on the Browse button and find the location where the TestReport.rdl file is saved. Select that file. In my case the file was saved on the SQL server and hence my location is \\sql2012sp1\C$\Users\administrator\Documents\Visual Studio 2010\Projects\Report Project1\Report Project1\TestReport.rdl.


Once you click Ok. You will now be presented with the below option. Click Save.


 You should see your new rdl file in the Reports Library as shown below.


Adding the Report Data Source


Before you create the Report Data Source, go back to the SQL Server Data Tools, open the TestProject1 we built earlier and double click on the TestProjectDataSource.rds file. Make a note of the connection string as shown below.


Now go back to the Reports Library we built, click on New Document and select Report Data Source.


Populate the Data Source Properties as shown below. We will use the same connection string we just looked before.


Click on the Test Connection button to confirm that your connection was created successfully. Then click Ok. 
You may get a connection error here. If you do back to your AdventureWorks2012 database and give 'NT Authority \ Anonymous Logon'  the following membership access


Now you should see your new Report Data Source as shown below.


Connect the report to the data source


We now need to connect the report to the data source. In TestReport, click on the options to see the Manage Data Sources. Below is a screenshot.


Below is what you should see. Click on the TestProjectDataSource. 


As you can see below, the Data Source Link is empty. Click on the options.


Select the TestProjectDataSource option and then click Ok.


You will still see the 'Linked data source could not be found'. Ignore that error and click Ok. If you notice, the moment you click Ok. The error disappears.


Now go back to the Reports Library and click on the 'TestReport', you should see the page loading icon and then the report that was created. Below are screenshots.



YOU HAVE SUCCESSFULLY SETUP, CONFIGURED AND TESTED YOUR SSRS SHAREPOINT INTEGRATION!!!

Conclusion

Since SQL's Report Services Configuration is no longer required, after installing the SQL Server Reporting Services application YOU DO NOT NEED to go to the Reporting Services Integration and add the 'Report Server Web Services URL'. Also it is not mandatory to install the SQL Server Data Tools on the SharePoint server you can use the existing one directly on the SQL server.

Throughout the article I have provided links. Below is where I have listed them again.

SQL 2012 SP1 Full Slip Stream
http://www.microsoft.com/en-us/download/details.aspx?id=35575

Install Reporting Services SharePoint Mode for SharePoint 2013
http://msdn.microsoft.com/en-us/library/jj219068(v=sql.110).aspx

Adding Reporting Services to the web front-end server of a SharePoint farm
http://msdn.microsoft.com/en-us/library/hh479775(v=sql.110).aspx

Adventure Works sample database
http://msftdbprodsamples.codeplex.com/releases/view/93587

Verify SharePoint Mode installation
http://msdn.microsoft.com/en-us/library/ms143773(v=sql.110).aspx 

See Also

SharePoint Resources on the TechNet Wiki
http://social.technet.microsoft.com/wiki/contents/articles/12390.sharepoint-2013-server.aspx