Cmdlet di PowerShell (modalità SharePoint di Reporting Services)
Quando si installa la modalità SharePoint di SQL Server 2012 Reporting Services, i cmdlet di PowerShell sono installati per supportare i server di report in modalità SharePoint. I cmdlets riguardano tre categorie di funzionalità.
Installazione del proxy e del servizio SharePoint Shared di Reporting Services.
Provisioning e gestione delle applicazioni di servizio Reporting Services e dei proxy associati.
Gestione delle funzionalità di Reporting Services, ad esempio estensioni e chiavi di crittografia.
In questo argomento sono incluse le sezioni seguenti:
Cmdlet Summary
Shared Service Cmdlets
Service Application Cmdlets
Reporting Services functionality related Cmdlets
Basic Samples
Detailed Samples
Create a service application and proxy
Review and update a delivery extension
Get and set Properties of the Reporting Service Application Database
List Data Extensions
Change and list subscription owners
Riepilogo dei cmdlet
Per eseguire i cmdlet è necessario aprire la shell di gestione SharePoint. È anche possibile utilizzare l'editor dell'interfaccia utente grafica incluso in Microsoft Windows, Windows PowerShell Integrated Scripting Environment (ISE). Per altre informazioni, vedere la pagina relativa all'avvio di Windows PowerShell in Windows Server (https://technet.microsoft.com/library/hh847814.aspx). Nei riepiloghi di cmdlet seguenti, i riferimenti ai database delle applicazioni di servizio indicano tutti i database creati e utilizzati da un'applicazione di servizio Reporting Services. Sono inclusi i database di configurazione, di avvisi e temporaneo.
Se quando si digitano gli esempi di PowerShell si visualizza un messaggio di errore simile al seguente:
- Install-SPRSService: Termine 'Install-SPRSService' non riconosciuto come nome di cmdlet, funzione, programma eseguibile o file script. Verificare l'ortografia del nome, che il percorso sia incluso e corretto, quindi riprovare.
Si è verificato uno dei problemi seguenti:
Non è stata installata la modalità SharePoint di Reporting Services, pertanto non sono presenti i cmdlet di Reporting Services.
Il comando di PowerShell è stato eseguito in Windows PowerShell o Windows PowerShell ISE anziché nella shell di gestione di SharePoint. Utilizzare la shell di gestione di SharePoint o aggiungere lo snap-in SharePoint alla finestra di Windows PowerShell con il comando seguente:
Add-PSSnapin Microsoft.SharePoint.PowerShell
Per altre informazioni, vedere Usare Windows PowerShell per amministrare SharePoint 2013 (https://technet.microsoft.com/library/ee806878.aspx).
Per aprire la shell di gestione di SharePoint ed eseguire i cmdlet
Fare clic sul pulsante Start.
Fare clic sul gruppo Prodotti Microsoft SharePoint.
Fare clic su Shell di gestione SharePoint.
Per visualizzare le informazioni della Guida relative alla riga di comando per un cmdlet, utilizzare il comando PowerShell "Get-Help" al prompt dei comandi di PowerShell. Ad esempio:
Get-Help Get-SPRSServiceApplicationServers
Top
Cmdlet del servizio condiviso e del proxy
Nella tabella seguente sono elencati i cmdlet di PowerShell per il servizio SharePoint Shared di Reporting Services.
Cmdlet |
Descrizione |
---|---|
Install-SPRSService |
Installa e registra, o disinstalla, il servizio SharePoint Shared di Reporting Services. Queste operazioni possono essere eseguite solo nel computer in cui è installato SQL Server Reporting Services in modalità SharePoint. Per l'installazione, vengono eseguite due operazioni:
Per la disinstallazione, vengono eseguite due operazioni:
NOTA: se nella farm sono presenti altri computer in cui è installato il servizio Reporting Services oppure se nella farm sono ancora in esecuzione applicazioni del servizio Reporting Services, viene visualizzato un messaggio di avviso. |
Install-SPRSServiceProxy |
Installa e registra, o disinstalla, il proxy del servizio Reporting Services nella farm di SharePoint. |
Get-SPRSProxyUrl |
Ottiene gli URL per l'accesso al servizio Reporting Services. |
Get-SPRSServiceApplicationServers |
Ottiene tutti i server nella farm di SharePoint locale contenenti un'installazione del servizio SharePoint Shared di Reporting Services. |
Top
Cmdlet dell'applicazione di servizio e del proxy
Nella tabella seguente sono elencati i cmdlet di PowerShell per le applicazioni di servizio Reporting Services e i proxy associati.
Cmdlet |
Descrizione |
---|---|
Get-SPRSServiceApplication |
Ottiene una o più applicazioni di servizio Reporting Services. |
New-SPRSServiceApplication |
Crea una nuova applicazione di servizio Reporting Services e i database associati. Parametro LogonType: consente di specificare se nel server di report viene usato un account del pool di applicazioni SSRS o un account di accesso di SQL Server per accedere al database del server di report. I possibili valori sono i seguenti:
|
Remove-SPRSServiceApplication |
Rimuove l'applicazione di servizio Reporting Services specificata. Vengono rimossi anche i database associati. |
Set-SPRSServiceApplication |
Modifica le proprietà di un'applicazione di servizio Reporting Services esistente. |
New-SPRSServiceApplicationProxy |
Crea un nuovo proxy dell'applicazione di servizio Reporting Services. |
Get-SPRSServiceApplicationProxy |
Ottiene uno o più proxy dell'applicazione di servizio Reporting Services. |
Dismount-SPRSDatabase |
Smonta i database dell'applicazione di servizio per un'applicazione di servizio Reporting Services. |
Remove-SPRSDatabase |
Rimuove i database dell'applicazione di servizio per un'applicazione di servizio Reporting Services. |
Set-SPRSDatabase |
Imposta le proprietà dei database associati a un'applicazione di servizio Reporting Services. |
Mount-SPRSDatabase |
Monta i database per un'applicazione di servizio Reporting Services. |
New-SPRSDatabase |
Crea nuovi database dell'applicazione di servizio per l'applicazione di servizio Reporting Services specificata. |
Get-SPRSDatabaseCreationScript |
Visualizza lo script di creazione del database per un'applicazione di servizio Reporting Services. È quindi possibile eseguire lo script in SQL Server Management Studio. |
Get-SPRSDatabase |
Ottiene uno o più database dell'applicazione di servizio Reporting Services. |
Get-SPRSDatabaseRightsScript |
Visualizza lo script diritti del database per un'applicazione di servizio Reporting Services. Vengono richiesti l'utente desiderato e il database, quindi viene restituita l'istruzione Transact-SQL che è possibile eseguire per modificare le autorizzazioni. È quindi possibile eseguire lo script in SQL Server Management Studio. |
Get-SPRSDatabaseUpgradeScript |
Visualizza uno script di aggiornamento del database. Lo script consente di aggiornare i database dell'applicazione di servizio Reporting Services alla versione del database dell'installazione di Reporting Services corrente. |
Top
Cmdlet correlati alle funzionalità personalizzate di Reporting Services
Cmdlet |
Descrizione |
---|---|
Update-SPRSEncryptionKey |
Aggiorna la chiave di crittografia per l'applicazione di servizio Reporting Services specificata ed esegue di nuovo la crittografia dei dati. |
Restore-SPRSEncryptionKey |
Ripristina una chiave di crittografia di cui in precedenza è stato eseguito il backup per un'applicazione di servizio Reporting Services. |
Remove-SPRSEncryptedData |
Elimina i dati crittografati per l'applicazione di servizio Reporting Services specificata. |
Backup-SPRSEncryptionKey |
Esegue il backup della chiave di crittografia per l'applicazione di servizio Reporting Services specificata. |
New-SPRSExtension |
Registra una nuova estensione con un'applicazione di servizio Reporting Services. |
Set-SPRSExtension |
Imposta le proprietà di un'estensione di Reporting Services esistente. |
Remove-SPRSExtension |
Rimuove un'estensione da un'applicazione di servizio Reporting Services. |
Get-SPRSExtension |
Ottiene una o più estensioni di Reporting Services per un'applicazione di servizio Reporting Services. |
Get-SPRSSite |
Ottiene i siti di SharePoint in base all'eventuale abilitazione della funzionalità "ReportingService". Per impostazione predefinita, vengono restituiti i siti in cui la funzionalità "ReportingService" è abilitata. |
Esempi di base
Restituire un elenco di cmdlet contenenti "SPRS" nel nome. Si tratta dell'elenco completo dei cmdlet di Reporting Services.
Get-command –noun *SPRS*
In alternativa, con un livello leggermente maggiore di dettaglio, inoltrare tramite pipe in un file di testo denominato commandlist.txt.
Get-command -noun *SPRS*| select name, definition |Format-list | Out-File c:\commandlist.txt
Installare il proxy del servizio e il servizio SharePoint di Reporting Services.
Install-SPRSService
Install-SPRSServiceProxy
Avviare il servizio Reporting Services.
get-spserviceinstance -all |where {$_.TypeName -like "SQL Server Reporting*"} | Start-SPServiceInstance
Digitare il comando seguente dalla shell di gestione di SharePoint per ottenere un elenco filtrato di righe del file di log. Con il comando verranno filtrate le righe contenenti "ssrscustomactionerror". In questo esempio viene analizzato il file di log creato al momento dell'installazione di rssharepoint.msi.
Get-content -path C:\Users\testuser\AppData\Local\Temp\rs_sp_0.log | select-string "ssrscustomactionerror"
Top
Esempi dettagliati
Oltre ai seguenti esempi, vedere la sezione “Script di Windows PowerShell” nell'argomento (Steps 1-4) Windows PowerShell script for Steps 1–4.
Creare un proxy e un'applicazione di servizio
Questo script di esempio consente di completare le attività seguenti:
Creare un proxy e un'applicazione di servizio Reporting Services. Per lo script si presuppone che il pool di applicazioni "My App Pool" esista già.
Aggiungere il proxy al gruppo di proxy predefiniti.
Concedere all'applicazione di servizio l'accesso al database del contenuto dell'applicazione Web sulla porta 80. Per lo script si presuppone che il sito "http://sitename" esista già.
# Create service application and service application proxy
$appPool = Get-SPServiceApplicationPool “My App Pool”
$serviceApp = New-SPRSServiceApplication “My RS Service App” –ApplicationPool $appPool
$serviceAppProxy = New-SPRSServiceApplicationProxy –Name “My RS Service App Proxy” –ServiceApplication $serviceApp
# Add service application proxy to default proxy group. Any web application that uses the default proxy group will now be able to use this service application.
Get-SPServiceApplicationProxyGroup –default | Add-SPServiceApplicationProxyGroupMember –Member $serviceAppProxy
# Grant application pool account access to the port 80 web application’s content database.
$webApp = Get-SPWebApplication “http://sitename”
$appPoolAccountName = $appPool.ProcessAccount.LookupName()
$webApp.GrantAccessToProcessIdentity($appPoolAccountName)
Rivedere e aggiornare un'estensione per il recapito
Nell'esempio di script di PowerShell seguente viene aggiornata la configurazione per l'estensione per il recapito tramite posta elettronica del server di report per l'applicazione di servizio denominata My RS Service App. Aggiornare i valori per il nome del server SMTP (<email server name>) e l'alias di posta elettronica relativo al mittente (<your FROM email address>).
$app=get-sprsserviceapplication -Name "My RS Service App"
$emailCfg = Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml
$emailXml = [xml]$emailCfg
$emailXml.SelectSingleNode("//SMTPServer").InnerText = “<email server name>”
$emailXml.SelectSingleNode("//SendUsing").InnerText = "2"
$emailXml.SelectSingleNode("//SMTPAuthenticate").InnerText = "2"
$emailXml.SelectSingleNode("//From").InnerText = '<your FROM email address>'
Set-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" -ExtensionConfiguration $emailXml.OuterXml
Nell'esempio precedente, se non si conosce il nome esatto dell'applicazione di servizio, è possibile riscrivere la prima istruzione per ottenere l'applicazione di servizio in base a una ricerca del nome parziale. Ad esempio:
$app=get-sprsserviceapplication | where {$_.name -like " My RS Ser *"}
Lo script seguente restituisce i valori di configurazione correnti per l'estensione per il recapito tramite posta elettronica del server di report per l'applicazione di servizio denominata "My RS Service App". Il primo passaggio consente di impostare il valore della variabile $app sull'oggetto applicazione di servizio denominata "My RS Service App"
La seconda istruzione consente di ottenere l'estensione per il recapito "Report Server Email" per l'oggetto applicazione di servizio nella variabile $app e di selezionare configurationXML
$app=get-sprsserviceapplication –Name "My RS Service App"
Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml
Top
Ottenere e impostare le proprietà del database dell'applicazione Reporting Service
L'esempio seguente restituisce innanzitutto un elenco dei database e delle proprietà in modo da potere determinare il GUID del database da fornire al comando set. Per un elenco completo delle proprietà, usare Get-SPRSDatabase | format-list.
get-SPRSDatabase | select id, querytimeout,connectiontimeout, status, server, ServiceInstance
Di seguito è riportato un esempio dell'output. Determinare l'ID del database da modificare e usare l'ID nel cmdlet SET.
Id : 56f8d1bc-cb04-44cf-bd41-a873643c5a14
QueryTimeout : 120
ConnectionTimeout : 15
Status : Online
Server : SPServer Name=uetestb01
ServiceInstance : SPDatabaseServiceInstance
Set-SPRSDatabase –identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 -QueryTimeout 300
Per verificare il valore impostato, eseguire di nuovo il cmdlet GET.
Get-SPRSDatabase –identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 | select id, querytimeout,connectiontimeout, status, server, ServiceInstance
Top
Elencare le estensioni per i dati
L'esempio seguente esegue il ciclo di ogni applicazione del servizio Reporting Services ed elenca le estensioni per i dati correnti per ogni applicazione.
$apps = Get-SPRSServiceApplication
foreach ($app in $apps)
{
Write-host -ForegroundColor "yellow" Service App Name $app.Name
Get-SPRSExtension -identity $app -ExtensionType “Data” | select name,extensiontype | Format-Table -AutoSize
}
Output di esempio:
Name ExtensionType
---- -------------
SQL Data
SQLAZURE Data
SQLPDW Data
OLEDB Data
OLEDB-MD Data
ORACLE Data
ODBC Data
XML Data
SHAREPOINTLIST Data
Top
Modificare ed elencare i proprietari di sottoscrizioni
Vedere Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription.
Top
Vedere anche
Concetti
Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription
Visualizzazione della Guida di SQL Server PowerShell
Altre risorse
Script di PowerShell di gestione di SharePoint nel sito CodePlex