|
|
|
SSC Veteran
      
Group: General Forum Members
Last Login: Wednesday, May 08, 2013 2:49 AM
Points: 244,
Visits: 211
|
|
Im not sure if there is a specific tool available or if there is a good way to go about doing this.
We are trying to clean up the reports we have on our live server compared with the reports we have checked into our source control.
The movement of reports to suit the folders users required their reports to be in have changed slowly over time and with 100s of reports to check, i wanted a relaviely easy way to check that the reports we have in source control , match the reports we have on our live system.
My Thought was to clean our test Report Server of all reports and then upload all the reports contained in source control...
But then what I need to be able to do is identify which reports are different Is there a good tool available for this comparrioson, (obviously its not just the report name and location that may have changed, the rdl may also have changed and a developer may not have checked a report in after updating it)
Any good ideas ?
|
|
|
|
|
SSC Veteran
      
Group: General Forum Members
Last Login: Wednesday, May 08, 2013 2:49 AM
Points: 244,
Visits: 211
|
|
Declare @LiveRS Table ( RDL varchar(MAX), CompletePath nvarchar(max) )
Insert Into @LiveRS
select convert(varchar(max), convert(varbinary(max), content)) [RDL],Path + Name [CompletePath] from [TEST].[Reportserver].[dbo].catalog where content is not null
Declare @SourceControlRS Table (RDL varchar(max), CompletePath nvarchar(max))
Insert Into @SourceControlRS
select convert(varchar(max), convert(varbinary(max), content)) [RDL],Path + Name [CompletePath] from [LIVE].[Reportserver].[dbo].catalog where content is not null
Select SC.CompletePath [Source Control Path], RS.CompletePath [Live Server Path],case When SC.RDL = RS.RDL Then 'Match' Else 'RDLs different' End [RDL Match], Case When SC.CompletePath = RS.CompletePath Then 'Match' Else 'Paths Different' End [Path Match] From @LiveRS RS Full Outer join @SourceControlRS SC on SC.CompletePath = RS.CompletePath
that should work shouldn't it?
|
|
|
|
|
SSCrazy
      
Group: General Forum Members
Last Login: Thursday, June 13, 2013 12:24 PM
Points: 2,892,
Visits: 5,871
|
|
I'd suggest you check out the RS Scripter available here. One of the options of this tool is to download the reports from your live server to a solution file complete with .rdls and such. Then you should be able to use your differencing tools (VSS has some built in but there are plenty of others out there, most likely your source control solution does as well) to check the downloaded solution with that already checked into source control.
-Luke.
To help us help you read this
For better help with performance problems please read this
|
|
|
|
|
SSC Veteran
      
Group: General Forum Members
Last Login: Wednesday, May 08, 2013 2:49 AM
Points: 244,
Visits: 211
|
|
HA! when I was first tasked with this I looked at RS Scripter , but I didn't know you could generate the entire solution
Much Appreciated!
|
|
|
|
|
SSCrazy
      
Group: General Forum Members
Last Login: Thursday, June 13, 2013 12:24 PM
Points: 2,892,
Visits: 5,871
|
|
The only thing to note is you should pay attention to what settings you set when you download the reports and create the solution. For example, if you upload a report to SSRS with a defaulted parameter, then decide to change the default but only change it via Report manager, depending on what options you choose with the RS scripter it will either grab the original default or the modified default. Just something to be aware of. Read the manual for more information.
-Luke.
To help us help you read this
For better help with performance problems please read this
|
|
|
|