Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How SSRS deployment works? [closed]

We currently working on an application where we are asked to generate reports. Our immediate choice was to use SSRS. After studying tutorials we successfully completed designing of all reports. However, I was not clear on how to deploy an SSRS Project for displaying them in a GUI environment.

My questions are:

  • Where should we deploy this project?
  • If we deploy in IIS, which server will run it?
  • Does IIS have the capability to run these?
  • Do we need to run any report server to run these reports?

Please any any clarification regarding these aspects.

I know how to create reports, but I am struggling with the basic concepts of SSRS. I.E. I need more information on how to setup in a production environment.

like image 452
Sai Avinash Avatar asked Aug 07 '13 13:08

Sai Avinash


People also ask

What are the different modes of deployment for SSRS?

A Reporting Services report server runs in one of two deployment modes; Native mode or SharePoint mode.

How many ways can you deploy SSRS reports?

There are two ways to deploy the SSRS reports in D365 for finance and operation. The first choice would be to deploy the report directly from Visual Studio. Open the Build menu, click Deploy. Alternatively, in Solution Explorer, right-click the report project and then click Deploy.

How deploy RDL report on server?

Firstly, open the RDL file of the report that you want to deploy in the report server from the Microsoft Report Builder tool. Then, connect it to the report server as depicted below by providing the report server URL and click on Connect. Then it starts connecting to the report server. Wait for a few minutes.

Do I need to deploy SSRs reports directly to the SSRs server?

Normally, I work on SQL Server Reporting Services (SSRS) reports in Visual Studio until they are done, so I don’t need to deploy SSRS reports directly to the SSRS server. I say, “normally,” because recently I ran into an issue which meant enabling the publishing option within Visual Studio.

How does SSRs work?

SSRS server finds the metadata of the report and sends a request for data to the data sources. Data returned by the data source is merged with the report definition into a report. When the report is generated, it is returned to the client. SSRS has quite a complex architecture.

What is SSRs (SQL Server Reporting Services)?

SQL Server Reporting Services (SSRS) is a reporting software that allows you to produce formatted reports with tables in the form of data, graph, images, and charts. These reports are hosted on a server that can be executed any time using parameters defined by the users. It is part of Microsoft SQL Server Services suite. Why SSRS? How SSRS Works?

How do I deploy a report in SQL Server data tools?

For more information, see Configure and Administer a Report Server (SSRS Native Mode). In SQL Server Data Tools, the action of publishing reports from a Report Server project or solution is known as deploying reports. Right-click the report project, and then click Properties.


1 Answers

There are three parts to every report so let's cover those first:

  1. A DataSource which is the connection string or equivalent to talk to a database, service or flat file. This can be contained in the report or shared. Shared matters in that a shared datasource may be used by one or many reports.

  2. A Dataset which is a query, procedure or structure of obtaining data to be used in a report. This may also be contained in a report or shared. Again shared may be used with one or many reports and may be cached on a server.

  3. The report itself. For the most part the RDL language is a proprietary microsoft language based in XML that takes one or many table, matrix, chart or other display elements and presents data that has been formatted for viewing through one or many datasets talking to one or many data sources.

Deployment in the simplest possible way could be the bold at the very bottom if you are familiar with Business Intelligence Development Studio. However there should be some checks done from the top down of a few things checked first:

  1. Do you have an SSRS instance running on a local instance or a server in a domain you can talk to? You need to ensure the Server running SSRS is actually on and working. On the installation computer you should find it quite simply with All Programs>Microsoft SQL Server (vers)>Configuration Tools>Reporting Services Configuration Manager. Once this tool comes up it will attempt to prompt a window with ServerName and Report Server Instance. The default instance is usually MSSQLSERVER for SQL Server Standard or higher.

  2. If this works great, if not you either never installed SSRS or the service is not running.

    **If you believe you did it may not be running the service yet. Go back to All Programs>Microsoft SQL Server (vers)>Configuration Tools>SQL Server Configuration Manager. This will show all services that SQL Server is currently running, including SSRS if it was installed correctly. When it comes up go to 'SQL Server Services' on the left pane and you should see the equivalent of 'SQL Server Reporting Services (SQL instance)'. If it is stopped, start it. If it is not there you need to insure the installation of SSRS was successful or may be on another machine.

  3. If 2 was successful you can hit 'Connect' and you now have a few panes on the left. For the time being deployment should focus on two of those panes 'Web Service URL' and 'Report Manager URL'. One is the ACTUAL SERVICE and the other is just a hosting location the user will see. Click on 'Report Manager URL', you should see a virtual directory and then a link like below. Click on this link and you should be able to get in.

    http:// (servername)/Reports
    

    If you could not get in it was probably due to you not being the administrator who installed SSRS or an equivalent admin. You need to be an admin on the server that installed SSRS then and click on this site. Once in you need to add relevant users under "Site Settings" in the upper right under Security. You not only need to do this but also under "Folder Settings" Security do this again. If you are deploying and altering reports you will want to be an 'admin' for the first site settings and a 'content manager' for the second. We need to ensure dedicated users can get to this page before continuing so ensure this can be done.

  4. Once you can do above go back to the SSRS config manager and click on 'Web Service URL' on the left pane. You should see a virtual directory, default is 'ReportServer', and an identification section that generally is set to port 80. Below that is an URL that is most commonly. Click this and ensure you can go to this site as well.

    http:// (servername)/ReportServer
    

    Did you notice that this url is similar but different to above? This a huge step that a lot of people new to SSRS miss and end up having their whole deployment process not work.

  5. If you can do both URL's above you are now ready to configure a solution for deployment. The easiest method to deploy code to an SSRS server is with the Visual Studio add on labeled 'Business Intelligence Development Studio'. You get this when you should have installed SSRS, however if you are on a different machine you may get this add on with either SQL Server Standard with advanced Tools or SQL Enterprise. To get to this the versioning is weird, they should match the Visual Studio Edition to the SQL Server version EXCEPT FOR SQL 2012, that is on VS 2010. If you are not sure you can again get to this under All Programs>Microsoft SQL Server (vers)>Business Intelligence Development Studio OR SQL Server Data Tools.

  6. Once you have this tool you would open it up and create a new project 'Report Server Project'. There are tutorials on how to work with IDE but I want to focus on deployment so you should generally have one or many projects under a solution. Right click the project and choose properties. For SSRS deployment this is were everything is done. The main properties are as such (I will not go over all, you may have more):

     Overwrite Datasets: False is default (should be kept, you may override if need be)
     Overwrite DataSources: False is default (same as above)
     TargetDatasetFolder: Datasets(you can change if need be)
     TargetDataSourceFolder: Data Sources(same as above)
     TargetServerURL: (blank)
    

    The main key to SSRS deployment that 80% of people get confused about first is you deploy to the SERVICE NOT THE REPORT MANAGER URL. So you would put in http:// (servername)/ReportServer to the TARGETSERVERURL, not the other one. So many people say that SSRS deployment just will not work for them and it ends up being they did the targeting wrong.

  7. Final step: You can create folders and datasources and even deploy to multiple locations all at once. But be careful, this is a powerful thing to set up and be aware of this. At the top of Visual Studio there is a ribbon for 'Configuration Management' that is by default selected to show the drop down 'Debug'. Click the drop down arrow. You should see one or many projects you have and you can choose to just 'Build' or also choose to check the 'Deploy' option as well. This would help if you wish to build and deploy to multiple environments or perhaps you can set up another configuration for different environments for QA, DEV, PROD, etc here as well.

    If you just want to get started from BIDS follow step 6 and just right click a project and choose 'DEPLOY'. This will deploy all shared objects first (but not overwrite if set to false) and then reports. You may also highlight individual items and choose deploy as well.

like image 118
djangojazz Avatar answered Sep 27 '22 21:09

djangojazz