[ACCEPTED]-How do I copy SSRS reports to a new server if I am not the owner of the reports-reporting-services

Accepted answer
Score: 45

Try this tool: http://code.google.com/p/reportsync/

It can sync all reports(or 6 selected folders) from one server to another. In 5 addition you can also download to and upload 4 from local folders.

Data sources with the 3 same name will automatically get attached. Saves 2 a lot of time as you don't have to reattach 1 datasources after uploading.

Note: I wrote this tool myself to suit my needs, but its free and open source.

Score: 7

Use this

Just point it at your RS server and 10 let it run. It has many options as to what 9 is and isn't scripted. One of which is download 8 existing RDL file.

When complete just a find 7 and replace tool to change the server name 6 (within the generated scripts) and any other 5 password/location information and let it 4 run. It is essentially using RS.exe under 3 the hood.

I seem to recall that you have 2 have to run it locally on the SSRS box when 1 deploying.

Score: 4

For SQL Server Reporting Services 2008 R2 10 or later, Microsoft have a migration tool:

http://www.microsoft.com/en-us/download/details.aspx?id=29560

Reporting 9 Services Migration Tool

A tool that migrates 8 reports and other artifacts from one report server 7 to another report server. It can also be 6 used as a backup and restore tool for 5 Reporting Services.

I haven't made personal 4 use of this, and to be honest the description 3 lists a few failings that the developers 2 are 'working towards a solution' on, but 1 it might help someone out.

Score: 2

If you can consider replacing all reports 11 on the new server, you should look at moving 10 the ReportServer database. This will also 9 move subscriptions and cached data: http://technet.microsoft.com/en-us/library/ms156421.aspx

What 8 version of SSRS are you using? The edit 7 button was in SSRS 2005, but is no longer 6 in 2008 or 2008 R2: it's replaced with the 5 "Download" button. Could that 4 be the problem?

As a Content Manager, you 3 should be able to edit the definitions of 2 any report.

Let me know what version you're 1 looking at. Jamie F

Score: 1

What I ended up doing is running Internet 10 Explorer as the server administrator user. You 9 do this by holding shift and right-clicking 8 on the Internet Explorer icon on your start 7 menu and then choosing "Run as different 6 user". You then enter the login details 5 for the domain administrator user account 4 and enter the address of the report server. Being 3 the server adminstrator user for the domain 2 allowed me to be the Content Manager user 1 for all of the reports.

Score: 1

First: backup your your new Reports database 9 before you do this. Copy the follwing tables 8 from the original Reports database to the 7 new Reports database: - Catalog - ChunkData - DataSource - Policy - PolicyuserRole - SecData - Users

Make 6 sure you dont copy the Keys table!

One issue 5 with this is you will need to re-create 4 all your shared datasources and re-assign 3 them to each report. But, this will copy 2 over all your folders, reports, and user 1 roles.

Score: 0

SSRS uses SQL Server to store it’s details 40 as a backend and the Catalog table is used 39 to store the report file in binary form. The 38 below script simply pulls the report definition 37 from the Catalog table & uses BCP utility 36 to export the same at a pre-defined path 35 as a .rdl file.

To use the BCP utility from 34 TSQL, we need to execute “xp_cmdshell” command; it 33 is disabled by default. So, first you need 32 to execute the below script to enable it 31 -

-- Allow advanced options to be changed. EXEC 30 sp_configure 'show advanced options', 1 29 GO
-- Update the currently configured 28 value for advanced options. RECONFIGURE 27 GO
-- Enable xp_cmdshell EXEC sp_configure 26 'xp_cmdshell', 1 GO
-- Update the currently 25 configured value for xp_cmdshell RECONFIGURE 24 GO
-- Disallow further advanced options 23 to be changed. EXEC sp_configure 'show advanced 22 options', 0 GO
-- Update the currently 21 configured value for advanced options. RECONFIGURE 20 GO

Once successfully executed, the below script with the required changes could be executed to download the files -

DECLARE @FilterReportPath AS VARCHAR(500) = NULL 19 DECLARE @FilterReportName AS VARCHAR(500) = NULL

DECLARE 18 @OutputPath AS VARCHAR(500) = 'D:\Reports\Download\'

DECLARE 17 @TSQL AS NVARCHAR(MAX) SET @OutputPath = REPLACE(@OutputPath,'\','/')

IF 16 LTRIM(RTRIM(ISNULL(@OutputPath,''))) = '' BEGIN 15 SELECT 'Invalid Output Path' END ELSE 14 BEGIN SET @TSQL = STUFF((SELECT ';EXEC master..xp_cmdshell 13 ''bcp " ' + ' SELECT ' + ' CONVERT(VARCHAR(MAX), ' + ' CASE 12 ' + ' WHEN LEFT(C.Content,3) = 0xEFBBBF 11 THEN STUFF(C.Content,1,3,'''''''') '+ ' ELSE 10 C.Content '+ '
END) ' + ' FROM ' + ' [ReportServer].[dbo].[Catalog] CL 9 ' + ' CROSS APPLY (SELECT CONVERT(VARBINARY(MAX),CL.Content) Content) C 8 ' + ' WHERE ' + ' CL.ItemID = ''''' + CONVERT(VARCHAR(MAX), CL.ItemID) + ''''' " queryout 7 "' + @OutputPath + '' + CL.Name + '.rdl" ' + '-T 6 -c -x''' FROM [ReportServer].[dbo].[Catalog] CL 5 WHERE CL.[Type] = 2 --Report AND '/' + CL.[Path] + '/' LIKE 4 COALESCE('%/%' + @FilterReportPath + '%/%', '/' + CL.[Path] + '/') AND 3 CL.Name LIKE COALESCE('%' + @FilterReportName 2 + '%', CL.Name) FOR XML PATH('')), 1,1,'')

EXEC 1 SP_EXECUTESQL @TSQL END

More Related questions