36 lines
999 B
PowerShell
36 lines
999 B
PowerShell
function Get-PublishedDataSources {
|
|
<#
|
|
.SYNOPSIS
|
|
Get and return the data sources from a SOAP webservice, a SQL Reports Server
|
|
|
|
.PARAMETER Proxy
|
|
A SOAP proxy for the SQL Reports Server
|
|
|
|
.PARAMETER Folder
|
|
The reports folder to look for Data Sources in
|
|
|
|
#>
|
|
[CmdletBinding()]
|
|
Param(
|
|
[Parameter(Position = 0, Mandatory = $true)]
|
|
[System.Web.Services.Protocols.SoapHttpClientProtocol]$Proxy,
|
|
|
|
[Parameter(Position = 1, Mandatory = $true)]
|
|
[Alias("reportfolder")]
|
|
[string]$Folder
|
|
)
|
|
$logLead = Get-LogLeadName
|
|
|
|
if ($folder[0] -ne "/") {
|
|
Write-Verbose ("$logLead : Transform {0} => /{0}" -f $folder)
|
|
$folder = "/" + $folder
|
|
}
|
|
|
|
Write-Verbose ("$logLead : Querying children of {0}" -f $folder)
|
|
$datasources = $proxy.ListChildren($folder, $false) | Where-Object {$_.TypeName -eq "DataSource"}
|
|
|
|
Write-Verbose ("$logLead : {0} datasource objects located." -f $datasources.Count)
|
|
return $datasources
|
|
}
|
|
|