Tuesday, March 5, 2013

SSRS Configure Deployment

Configure your deployment

Build configurations allow you to specify which environment to which you want to deploy reports.  For example, if you have a Development, Functional Test, Stage and Production environment, you will want to create a build configuration each said environment.  I would name them Dev, Test, Stage, Prod.

  1. Build your project
    1. Right-click on your project and click Build
    2. Make sure it succeeds and doesn't throw any errors or warnings
      1. If it does try to resolve errors / warnings and build again.
  2. Set up your environment(s)
  3. Set up the configuration for your environment(s)
    1. Click on the drop down Configuration Manager window in the toolbar
    2. Click Configuration Manager
    3. Under the Active solution configuration: drop down select <New…>
    4. Name your environment 
      1. i.e. Test, Dev, Stage, Prod
      2. NOTE:  Name your environments so that you will know exactly which environment it is going to.  The use of Test, Dev, Stage, and Release are highly recommended
    5. Select the drop down under Copy settings from: to copy settings of an existing configuration and then tweak.
      1. I highly recommend you do this
    6. Make sure the checkmark is marked on Create new project configurations
    7. Click OK
  4. In the Solution Explorer navigation pane, right-click on your project and select Properties.
  5. The Project Property Pages window will open and will show Configuration options.
  6. On Configuration:  Ensure that the dropdown is on the desired configuration

    1. i.e. Test, Dev, Stage, Release, etc.
  7. There are three options under the General tab: Build, Debug, and Deployment
    1. On Build change the OutputPath to bin\EnvironmentName
    2. i.e. bin\Test
      1. If it is already that way, don't worry about it, otherwise this will cause you grief if you have two configurations pointing to the same output folder
    3. Under Deployment you will see the following properties:
      1. OverwriteDatasets: false
      2. OverwriteDataSources: false
        1. These two are defaulted to false because it is safer. Whenever you deploy your project for the first time these will be deployed. HOWEVER every time after your first deployment, these will not be updated. This is to ensure that your connections do not get overriden.
        2. If you change these properties to true then they will override each time you deploy them.
        3. I would keep these properties set to false, especially your DataSources. If you find yourself updating either your Datasets or your DataSources then you can change this property.
    4. Under Deployment change the following items:
      1. Target Dataset Folder: Your Dataset Location
        1. i.e: /ProjectName/DataSets
      2. Target DataSourceFolder: Your Data Source Location
        1. i.e.: /ProjectName/Data Sources
      3. Target Report Folder: Your Report Location
        1. i.e.: /ProjectName/Reports
      4. Target Report Part Folder: Your Report Part Location
        1. i.e.: /ProjectName/Report Parts
      5. Target Server URL: Your Server URL Location
        1. i.e.: http://ServerName.domainname/SSRSReportServer
      6. Target Server Version: Your Server version (drop down menu)
        1. i.e.: SQL Server 2008 R2 or later
    5. Change Configuration: drop down to other environments
      1. i.e. Test, Dev, Stage, Release, etc.
    6. Click OK
See our next Tutorial: SSRS Deployment


  1. Hi! i'm exactly facing this, but I have many doubts, first of all I understand that for all the 6 config target options under deployment, the folder has to exist in the server right? thank's in advance for your help!! Christian

  2. The folder doesn't need to exist on the server, but if this is the case you need to have the Content Manager right on the directory you are trying to deploy to. If you have this right, it will create the directories for you. If you don't have this right, you will need to contact your SSRS admin and have the directories created for you. You will need Content Manager rights on those new directories, or you will not be able to deploy.