I have a working script that updates connection string of shared SSRS datasource from one server to another for maintenance events.
The only thing I can't figure out is how to updated and save Description filed? It's needed for easy identification of datasources that were moved to standby servers
$URI = New-Object System.Uri('http://localhost/ReportServer/ReportService2010.asmx?wsdl') $SSRS = New-WebServiceProxy -Uri $URI -UseDefaultCredential $DataSource = ($SSRS.ListChildren("/data sources", $true)) | Where-Object {$_.Path -eq "/Data Sources/WebReports"} $SRC = 'Primary Mode Server' $DataSource.Description = "Datasource points to $SRC" $DS = $SSRS.GetDataSourceContents($DataSource.Path) $DS.ConnectString = $DS.ConnectString.Replace('Standby Mode Server',$SRC) $DS.UserName = "newusername" $DS.Password = "newuserpassword" $SSRS.SetDataSourceContents($DataSource.Path,$DS)