I have to copy all reports from one SSRS server to another. I plan on doing this by going through each report and downloading the report definition file and then uploading the file to the new server.
I have been given System Administrator and System User site wide roles and I have Browser, Content Manager, My Reports, Publisher and Report Builder roles for the Home folder but I still can't see the Edit button that will allow me to save the report definition file. The reason is because the reports are owned by other users. I can't ask all the users to give me permissions to edit their reports because there are too many users and I think a lot of them will never get round to doing it.
What can I do to copy all the reports to the new server if I am not the owner of most of them?
If you can consider replacing all reports on the new server, you should look at moving the ReportServer database. This will also move subscriptions and cached data: http://technet.microsoft.com/en-us/library/ms156421.aspx
What version of SSRS are you using? The edit button was in SSRS 2005, but is no longer in 2008 or 2008 R2: it's replaced with the "Download" button. Could that be the problem?
As a Content Manager, you should be able to edit the definitions of any report.
Let me know what version you're looking at. Jamie F
What I ended up doing is running Internet Explorer as the server administrator user. You do this by holding shift and right-clicking on the Internet Explorer icon on your start menu and then choosing "Run as different user". You then enter the login details for the domain administrator user account and enter the address of the report server. Being the server adminstrator user for the domain allowed me to be the Content Manager user for all of the reports.
First: backup your your new Reports database before you do this. Copy the follwing tables from the original Reports database to the new Reports database: - Catalog - ChunkData - DataSource - Policy - PolicyuserRole - SecData - Users
Make sure you dont copy the Keys table!
One issue with this is you will need to re-create all your shared datasources and re-assign them to each report. But, this will copy over all your folders, reports, and user roles.
SSRS uses SQL Server to store it’s details as a backend and the Catalog table is used to store the report file in binary form. The below script simply pulls the report definition from the Catalog table & uses BCP utility to export the same at a pre-defined path as a .rdl file.
To use the BCP utility from TSQL, we need to execute “xp_cmdshell” command; it is disabled by default. So, first you need to execute the below script to enable it -
Once successfully executed, the below script with the required changes could be executed to download the files -
For SQL Server Reporting Services 2008 R2 or later, Microsoft have a migration tool:
http://www.microsoft.com/en-us/download/details.aspx?id=29560
I haven't made personal use of this, and to be honest the description lists a few failings that the developers are 'working towards a solution' on, but it might help someone out.
Use this
Just point it at your RS server and let it run. It has many options as to what is and isn't scripted. One of which is download existing RDL file.
When complete just a find and replace tool to change the server name (within the generated scripts) and any other password/location information and let it run. It is essentially using RS.exe under the hood.
I seem to recall that you have have to run it locally on the SSRS box when deploying.