Ändern der Datenquelle von SSRS-Report mit Powershell
Ich versuche, ahange Datenquellen mehrerer SSRS-Report mit Powershell zu einer freigegebenen Datenquelle auf meine Berichterstattung server. Hier mein code:
cls;
$reportserver = "myServer";<br/>
$url = "http://$($reportserver)/reportserver/reportservice2005.asmx?WSDL";";<br/>
$ssrs = New-WebServiceProxy -uri $url -UseDefaultCredential -Namespace "ReportingWebService";
[ReportingWebService.DataSource[]] $myDataSource = new-object ReportingWebService.DataSource
$myDataSource[0].Name = "myDS"";<br/>
$myDataSource[0].Item = New-Object ReportingWebService.DataSourceReference<br/>
$myDataSource[0].Item.Reference = "/Data Sources/MyDS"<br/>
$reports = $ssrs.ListChildren('/DH', $false)
$reports | ForEach-Object {<br/>
$reportPath = $_.path<br/>
Write-Host "Report: " $reportPath<br/>
$dataSources = $ssrs.GetItemDataSources($reportPath)<br/>
$dataSources | ForEach-Object {<br/>
Write-Host "Old source: $($_.Name), $($_.Item.ConnectString)"<br/>
$ssrs.SetItemDataSources($reportPath, $myDataSource)<br/>
Write-Host "New source: $($_.Name), $($_.Item.ConnectString)"<br/>
}<br/>
Write-Host "------------------------"
}
Aber ich bin immer der folgende Fehler beim Aufruf von "SetItemDataSources"-Methode:
***Argument "1" having the value "ReportingWebService.DataSource[]" of "SetItemDataSources" can not be converted to type "ReportingWebService.DataSource[]".***
Die Frage ist: Was ist falsch? Die Typen sind die GLEICHEN!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dank e82.eric!
Sie führte mich zu der funktionierenden Lösung. Hier ist es:
Ich hatte das gleiche problem.
Seinen keine tolle Lösung, aber nach http://www.vistax64.com/powershell/273120-bug-when-using-namespace-parameter-new-webserviceproxy.html. Der namespace-parameter von New-WebServiceProxy ist etwas gebrochen. Die post schlägt vor, den automatisch generierten namespace, die bis Ende arbeiten für mich, damit ich denke, Sie könnten dies tun.
Habe ich verpackt diese Informationen in zwei schöne scripts:
http://gallery.technet.microsoft.com/scriptcenter/Get-SSRS-Data-Source-19360302
http://gallery.technet.microsoft.com/scriptcenter/Set-SSRS-Data-Source-3b074747
Genießen!