Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $reportserver = "myServer"
- $url = "http://$($reportserver)/reportserver/reportservice2005.asmx?WSDL"
- $ssrs = New-WebServiceProxy -uri $url -UseDefaultCredential
- $proxyNamespace = $ssrs.GetType().Namespace
- $myDataSource = New-Object ("$proxyNamespace.DataSource")
- $myDataSource[0].Name = "myDS"
- $myDataSource[0].Item = New-Object ("$proxyNamespace.DataSourceReference")
- $myDataSource[0].Item.Reference = "/Data Sources/MyDS"
- $reports = $ssrs.ListChildren('/DH', $false)
- $reports | ForEach-Object {
- $reportPath = $.path
- Write-Host "Report: " $reportPath
- $dataSources = $ssrs.GetItemDataSources($reportPath)
- $dataSources | ForEach-Object {
- Write-Host "Old source: $($.Name), $($.Item.ConnectString)"
- $ssrs.SetItemDataSources($reportPath, @($myDataSource))
- Write-Host "New source: $($.Name), $($_.Item.ConnectString)"
- }
- Write-Host "------------------------" }
- cls;
- #Set variables:
- $reportserver = "myServer";
- $newDataSourcePath = "/Data Sources/MyDS"
- $newDataSourceName = "MyDS";
- $reportFolderPath = "/DH"
- #------------------------------------------------------------------------
- $ssrs = New-WebServiceProxy -uri $url -UseDefaultCredential
- $reports = $ssrs.ListChildren($reportFolderPath, $false)
- $reports | ForEach-Object {
- $reportPath = $_.path
- Write-Host "Report: " $reportPath
- $dataSources = $ssrs.GetItemDataSources($reportPath)
- $dataSources | ForEach-Object {
- $proxyNamespace = $_.GetType().Namespace
- $myDataSource = New-Object ("$proxyNamespace.DataSource")
- $myDataSource.Name = $newDataSourceName
- $myDataSource.Item = New-Object ("$proxyNamespace.DataSourceReference")
- $myDataSource.Item.Reference = $newDataSourcePath
- $_.item = $myDataSource.Item
- $ssrs.SetItemDataSources($reportPath, $_)
- Write-Host "Report's DataSource Reference ($($_.Name)): $($_.Item.Reference)"
- }
- Write-Host "------------------------"
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement