Utilizzo di script per l'esecuzione di attività di distribuzione e di amministrazione

Reporting Services supporta l'utilizzo di script per automatizzare installazioni di routine, distribuzioni e attività amministrative. La distribuzione di un server di report è un processo costituito da più passaggi. Per configurare una distribuzione è necessario utilizzare diversi strumenti e processi, in quanto non è disponibile un unico programma o approccio che consenta di automatizzare tutte le attività.

Non è consigliabile automatizzare tutti i passaggi. In alcuni casi, l'esecuzione di un passaggio in modo manuale oppure tramite uno strumento grafico costituisce l'approccio migliore e più efficace. Se, ad esempio, si desidera distribuire un numero elevato di report e modelli, è consigliabile copiare i database del server di report anziché scrivere codice per ricreare l'ambiente del server di report.

Per alcuni passaggi è necessario utilizzare codice personalizzato. È ad esempio possibile configurare gli URL del servizio Web e Gestione report in modo automatico, ma solo scrivendo codice personalizzato per l'esecuzione di chiamate nel provider WMI (Windows Management Instrumentation, Strumentazione gestione Windows) di Server report. Se non si desidera scrivere codice, per eseguire il passaggio è necessario utilizzare lo strumento di configurazione di Reporting Services.

Per eseguire script per la configurazione di un server di report, è necessario essere un amministratore locale nel computer che si sta configurando. Per ulteriori informazioni, vedere Procedura: Configurazione di un server di report per l'amministrazione remota.

In questo argomento vengono descritti gli approcci consigliati per l'automatizzazione di passaggi specifici. Sono menzionati vari programmi e interfacce programmatiche, per ognuno dei quali è disponibile una descrizione di seguito in questo argomento.

Attività di distribuzione e modalità di automatizzazione di tali attività

Nella tabella seguente sono riepilogate le attività di installazione e configurazione necessarie per la distribuzione di un server di report. È possibile utilizzare la tabella per individuare, per un'attività specifica, un approccio che consenta di eseguire l'attività in modo automatico.

Attività

Approccio

Installazione di Reporting Services.

Per eseguire un'installazione automatica, è possibile avviare il programma di installazione dalla riga di comando.

È possibile utilizzare il programma di installazione sia per installare che per configurare un server di report, ma solo se si specifica l'opzione di configurazione predefinita e se il sistema soddisfa tutti i requisiti per il tipo di installazione. Se non è possibile installare la configurazione predefinita, è necessario eseguire un'installazione di tipo "solo file". Per ulteriori informazioni sulle opzioni di installazione, vedere Considerazioni sull'installazione di Reporting Services.

Configurazione dell'account di servizio.

L'account di servizio viene configurato inizialmente tramite il programma di installazione. Per automatizzare le modifiche all'account di servizio come attività della post-installazione, è necessario scrivere codice personalizzato che effettua chiamate al provider WMI di Server report. Non sono disponibili utilità della riga di comando o modelli di script per la configurazione a livello di programmazione dell'account del servizio.

Se i requisiti relativi al codice non consentono di automatizzare questo passaggio, è possibile configurare manualmente in modo semplice l'account eseguendo lo strumento di configurazione di Reporting Services. Per ulteriori informazioni, vedere Procedura: Configurazione di un account del servizio per Reporting Services.

Configurazione del servizio Web ReportServer e degli URL di Gestione Report.

È necessario scrivere codice personalizzato per l'esecuzione di chiamate nel provider WMI per Server report. Non sono disponibili utilità della riga di comando o modelli di script per la configurazione degli URL.

Se si desidera evitare la scrittura di codice, è possibile configurare manualmente gli URL eseguendo lo strumento di configurazione di Reporting Services. Per ulteriori informazioni, vedere Procedura: Configurazione di un URL (Configurazione di Reporting Services).

Creazione di un database del server di report.

È necessario scrivere codice personalizzato per l'esecuzione di chiamate nel provider WMI di Server report. Non sono disponibili utilità della riga di comando o modelli di script per la creazione di database del server di report e di RSExecRole.

Se si desidera evitare la scrittura di codice, è possibile creare il database manualmente eseguendo lo strumento di configurazione di Reporting Services. Per ulteriori informazioni, vedere Procedura: Creazione di un database del server di report (configurazione di Reporting Services).

Configurazione della connessione del database del server di report.

Se si modifica la stringa di connessione, l'account o la password oppure il tipo di autenticazione, eseguire l'utilità rsconfig per configurare la connessione. Per ulteriori informazioni, vedere Configurazione della connessione a un database del server di report e Utilità rsconfig.

Non è possibile utilizzare rsconfig.exe per creare o aggiornare il database. Il database e RSExecRole devono esistere.

Configurazione di una distribuzione con scalabilità orizzontale.

Per eseguire in modo automatico una distribuzione con scalabilità orizzontale, scegliere uno degli approcci seguenti:

Backup delle chiavi di crittografia.

Per eseguire in modo automatico il backup delle chiavi di crittografia, scegliere uno degli approcci seguenti:

Configurazione della posta elettronica del server di report.

Scrivere codice personalizzato che viene eseguito nel provider WMI per Reporting Services. Il provider supporta un subset delle impostazioni di configurazione della posta elettronica.

Sebbene il file RSReportServer.config includa tutte le impostazioni, non utilizzare questo file in modo automatizzato. In particolare, non utilizzare un file batch per copiare il file in un altro server di report. Ogni file di configurazione include valori specifici per l'istanza corrente. Tali valori non saranno validi in altre istanze del server di report.

Per ulteriori informazioni sulle impostazioni, vedere Configurazione di un server di report per il recapito tramite posta elettronica.

Configurazione dell'account di esecuzione automatica.

Per configurare l'account di esecuzione automatica in modo automatico, scegliere uno degli approcci seguenti:

Distribuzione di contenuti esistenti in un altro server di report, includendo gerarchia di cartelle, assegnazioni di ruolo, report, sottoscrizioni, pianificazioni, origini dei dati e risorse.

Il modo migliore per ricreare un ambiente del server di report esistente consiste nel copiare il database del server di report in una nuova istanza del server di report.

Un approccio alternativo consiste nello scrivere codice personalizzato per ricreare il contenuto del server di report esistente a livello di programmazione. Tenere presente, tuttavia, che le sottoscrizioni, gli snapshot dei report e la cronologia dei report non possono essere ricreati a livello di programmazione.

Per alcune distribuzioni può essere vantaggioso utilizzare entrambe le tecniche, ovvero ripristinare un database del server di report e quindi eseguire codice personalizzato per modificare il database per un'installazione specifica.

Per ulteriori informazioni sullo spostamento di un database del server di report, vedere Spostamento di database del server di report in un altro computer. Per ulteriori informazioni sulla creazione di un ambiente del server di report a livello di programmazione, vedere la sezione "Utilizzo di script per eseguire la migrazione del contenuto e delle cartelle del server di report" di questo argomento.

Strumenti e tecnologie per l'automatizzazione della distribuzione del server

Nell'elenco seguente vengono riepilogati i programmi e le interfacce che è possibile utilizzare per automatizzare la distribuzione e le attività di manutenzione:

  • È possibile eseguire il programma di installazione in modalità automatica per installare e, in alcuni casi, configurare i componenti del server di report. Per configurare un'istanza del server di report con il programma di installazione, è necessario utilizzare un'installazione di tipo "solo file".

  • È possibile utilizzare il provider WMI Reporting Services e le utilità della riga di comando di Reporting Services per la configurazione del server locale e remoto.

    Il provider WMI Reporting Services espone classi, proprietà e metodi che consentono di configurare tutti gli aspetti di un'installazione di Reporting Services, tra cui la definizione dell'account di servizio, la configurazione degli URL, la creazione e la configurazione del database del server di report o la configurazione di un server di report per il recapito tramite posta elettronica. Per utilizzare il provider WMI è necessario scrivere codice personalizzato o script. Per ulteriori informazioni, vedere Provider WMI di Reporting Services.

    Se non si desidera scrivere codice, è possibile utilizzare le utilità della riga di comando rsconfig.exe e rskeymgmt.exe. È possibile scrivere file batch che consentano di eseguire le utilità. Queste utilità consentono di automatizzare alcune attività di configurazione, ma non tutte.

  • Lo strumento host di scripting del server di report (rs.exe) consente di eseguire codice Microsoft Visual Basic scritto per ricreare contenuti esistenti o spostarli da un server di report a un altro. Per utilizzare questo approccio, scrivere lo script in Visual Basic, salvarlo come file con estensione rss e quindi utilizzare l'utilità rs.exe per eseguire lo script nel server di report di destinazione. Lo script creato può chiamare l'interfaccia SOAP per il servizio Web ReportServer. Gli script di distribuzione vengono creati utilizzando questo approccio poiché consente di ricreare i contenuti e lo spazio dei nomi della cartella del server di report, nonché la sicurezza basata sui ruoli.

Utilizzo di script per eseguire la migrazione del contenuto e delle cartelle del server di report

È possibile creare script per duplicare un ambiente del server di report in un'altra istanza del server di report. Gli script di distribuzione vengono in genere scritti in Visual Basic e successivamente elaborati utilizzando l'utilità host di scripting del server di report.

Utilizzare gli script per copiare cartelle, origini dei dati condivise, risorse, report, assegnazioni di ruoli e impostazioni da un server all'altro. È possibile scrivere uno script per un'istanza del server di report, quindi eseguirlo in un altro server per ricreare lo spazio dei nomi del server di report. In presenza di più server di report nella distribuzione di Reporting Services, è possibile eseguire lo script in ogni singolo server per configurare tutti i server allo stesso modo.

Nell'elenco seguente viene descritta la procedura per migrare report da un server in un altro.

  1. Impostare la variabile script sull'URL del server di report di origine.

  2. Utilizzare i metodi GetItemDefinition e GetProperties per recuperare la definizione e le proprietà del report.

  3. Impostare l'URL in modo che punti al server di destinazione.

  4. Utilizzare il metodo CreateCatalogItem, passando le proprietà restituite da GetProperties e la definizione del report restituita da GetItemDefinition.

Utilizzando una combinazione di metodi Get e Create, è possibile eseguire una procedura simile per migrare impostazioni, cartelle, origini dei dati condivise e risorse. Per ulteriori informazioni sui metodi disponibili, vedere Riferimento tecnico (Reporting Services).

Nota

Gli script vengono eseguiti con le credenziali di Microsoft Windows dell'utente che esegue lo script, a meno che non si decida di impostare le credenziali esplicitamente.

Per ulteriori informazioni sulla formattazione ed esecuzione di un file script, vedere Scripting con l'utilità rs e il servizio Web.

Utilizzo degli script per impostare le proprietà del server

È possibile scrivere script che consentono di impostare le proprietà di sistema nel server di report. Nello script Visual Basic .NET riportato di seguito viene illustrato un sistema per impostare le proprietà: Nell'esempio il controllo ActiveX RSClientPrint viene disabilitato, tuttavia è possibile sostituire EnableClientPrinting e False con qualsiasi nome e valore di proprietà valido. Per visualizzare un elenco completo di proprietà del server, vedere Proprietà di sistema del server di report.

Per utilizzare lo script, salvarlo in un file con estensione rss e quindi utilizzare l'utilità della riga di comando rs.exe per eseguire il file nel server di report. Lo script non è compilato, pertanto non è necessario disporre di un'installazione di Visual Basic. Nell'esempio si presuppone che l'utente disponga delle autorizzazioni per il computer locale che ospita il server di report. Se non è stato eseguito l'accesso con un account che dispone delle autorizzazioni, sarà necessario specificare le informazioni sull'account tramite ulteriori argomenti della riga di comando. Per ulteriori informazioni, vedere Utilità rs.

Public Sub Main()
        Dim props(0) As [Property]
        Dim setProp As New [Property]
        setProp.Name = "EnableClientPrinting"
        setProp.Value = “False” 
        props(0) = setProp
        Try
            rs.SetSystemProperties(props)
        Catch ex As System.Web.Services.Protocols.SoapException
            Console.Write(ex.Detail.InnerXml)
        Catch e as Exception
            Console.Write(e.Message)
        End Try
End Sub