home articles news code blog links search  
  Code Samples

Articles and Presentations

sqldbatips.com blog

Download Reporting Services Scripter

Author Jasper Smith Hits 54876
Create Date 02-03-2005 Last Updated 15-05-2009
Versions SQL2000, SQL2005, SQL2008    


Reporting Services Scripter is a .NET Windows Forms application that enables scripting and transfer of all Microsoft SQL Server Reporting Services catalog items to aid in transferring them from one server to another. It can also be used to easily move items on mass from one Reporting Services folder to another on the same server. Depending on the scripting options chosen, Reporting Services Scripter can also transfer all catalog item properties such as Descriptions, History options, Execution options (including report specific and shared schedules), Subscriptions (normal and data driven) and server side report parameters.

Download Reporting Services Scripter (
View the Readme file

Key Features

  • Quickly and easily extract all RDL from a Report Server
  • Automatically generates scripts to load reports, datasource's, resources, linked reports and folders with all their associated properties to enable report migration between servers with no manual intervention e.g. avoids having to try and copy execution options between servers manually using Report Manager which is prone to mistakes and not as repeatable or efficient as scripting
  • Automatically generates command files to load scripted items onto a new server
  • Automatically transfer items from one server to another (including from SQL2000 to SQL2005 to SQL2008)
  • Generate scripts for Shared Schedules
  • Generate Scripts for System and Item Level Roles
  • Generate Scripts for Normal and Data Driven Report Subscriptions
  • Easily generate loader scripts to load existing RDL files e.g. if RDL is kept under source control then it can just generate the scripts to load the reports rather than extract the report definition as well
  • Automatically backs up reports before overwriting them
  • Easily generate scripts from the command line
  • Reverse engineer Visual Studio Report Projects from a Report Server

Tested Environments

  • Windows 2000, XP, Vista
  • Windows Server 2003, 2008
  • SQL ServerReporting Services 2000, 2005, 2008


In order to run Reporting Services Scripter you need to have the .NET Framework 1.1 installed. In order to be able to run the generated command files or use the Transfer mode of deployment you will need the Reporting Services Management Tools installed, specifically the command line utility RS.EXE (this is version specific and the correct versions for your environment are required for full functionality)

Future Enhancements

If you have any suggestions about future enhancements send your request to jas@sqldbatips.com

Revision History

Jasper Smith
Initial public release
Jasper Smith
Added fix for manually modified report datasources. When a report datasource is manually changed on the server, the report RDL is not updated thus when it is exported it still references the original datasource. This fix adds a call to SetReportDataSources to the report script generated so that the current datasource references are set explicitly rather than using those in the report definition.
Jasper Smith
Added the ability to script Shared Schedules and System and Item Level Roles
Jasper Smith
Added new configuration option for SSL fix (KB 823177)
Jasper Smith
Added fix for returns in description fields and the options to save scripts as Unicode, the ability to append security to an existing folder and to script report subscriptions
Jasper Smith
Added fix for null parameter values in subscriptions. These were being incorrectly scripted as empty strings rather than Nothing.
Jasper Smith
Added fix for parameter values in data driven subscriptions. These were being incorrectly scripted as Nothing even if parameters existed.
Jasper Smith
Added support for using Basic Authentication to connect to to a Report Server.
Added fix for scripted resource items. Even if the Use Relative Paths option was selected, full filepaths were being scripted if the Create Folder Hierachy option was selected. This has been corrected so that filepaths are relative.
Jasper Smith
Added fix to allow custom parameter defaults defined on the server for linked reports to be scripted. This uses the same option as for standard reports (Server Parameters Override Report)
Jasper Smith
Added SQL2005 support, resizable GUI and Transfer mode for automatic transfer of items between Report Servers (including migrating from SQL2000 to SQL2005)
Jasper Smith
Added fix for case sensitivity issue with Report Server url's and rewrote catalog enumeration to massively speed it up
Jasper Smith
Added fix for issue with the ListChildren method not returning items in the expected order (this only affects release
Jasper Smith
Added commandline version (RSScripterCmd). Added new scripting mode to generate input files for RSScripterCmd. Fixed issue with all scripting options not being applied to Linked Reports.
Jasper Smith
Added fixes for double quotes in descriptions and subscription parameters not being escaped and also added support for expression based datasources (SQL 2005)
Jasper Smith
Added fixes for error when scripting linked report and the Script Subscriptions option was selected and off by one offset error when extracting or loading report or resource content. Added ability to save a datasource as a RDS file. Added ability to reverse engineer Visual Studio Report Projects from a Report Server. Added ability to upload RDL and RDS files (from a Report Project) from a folder to a Report Server (no script import) via the commandline tool.
Jasper Smith
Added fix for linefeeds in email subscription comment field and added a new option to remove timezone offsets from scripted shared schedules
Jasper Smith
Added a WebServiceTimeout configuration setting to prevent timeouts with large catalogs
Jasper Smith
Fixed an issue with the command line version opening the inputfile as read/write which causes an error when the file is under source control. Added new configuration option to allow overriding the default timeout for scripts run via RS.EXE. This option adds a new TIMEOUT script variable to the generated batch file. Added a new configuration option to enable lazy loading of the Report Server catalog.
Jasper Smith
Fixed a script parsing issue with Transfer mode
Jasper Smith
Added support for scripting custom report properties and fixed subscription scripting issue with timed subscriptions
Jasper Smith
Added fix for line breaks being removed from SQL in data driven subscriptions
Jasper Smith
Confirmed support for SQL Server 2008 Reporting Services
Jasper Smith
Added new /td parameter to RSScripterCmd to allow overriding the target folder for shared datasources and fixed an issue with the datasource fixup code for SQL 2008
Jasper Smith
Added fix for command line tool not accepting unc share paths as valid file paths for parameters

Print this page  Print this page Email this article  Email this article Add to Favourites  Add to Favourites
© Copyright sqldbatips Ltd 2008. Contact webmaster home | news | articles | code | blog | links | search  

free tracking