Distribuzione di un'estensione per il recapito
Le estensioni per il recapito forniscono le informazioni di configurazione in un file di configurazione XML. Il file XML è conforme all'elemento XML Schema definito per le estensioni per il recapito. Le estensioni per il recapito forniscono l'infrastruttura per l'impostazione e la modifica del file di configurazione.
Se un'estensione per il recapito viene sostituita o aggiornata, tutte le sottoscrizioni che fanno riferimento all'estensione per il recapito rimangono valide.
Dopo avere scritto e compilato l'estensione per il recapito del servizio di creazione report in una libreria Microsoft .NET Framework, è necessario copiarla nella directory appropriata e aggiungere una voce al file di configurazione di Reporting Services appropriato, in modo che il server di report possa individuarla.
Elemento Extension del file di configurazione
Le estensioni per il recapito distribuite nel server di report devono essere immesse come elementi Extension
nel file di configurazione. Il file di configurazione per il server di report è RSReportServer.config.
Nella tabella riportata di seguito vengono descritti gli attributi dell'elemento Extension
per le estensioni per il recapito.
Attributo | Descrizione |
---|---|
Name |
Nome univoco per l'estensione, ad esempio "Posta elettronica server di report" per l'estensione per il recapito tramite posta elettronica o "Condivisione file server di report" per l'estensione per il recapito tramite condivisione. La lunghezza massima consentita per l'attributo Name è di 255 caratteri. Il nome deve essere univoco all'interno di tutte le voci dell'elemento Extension di un file di configurazione. Se è presente un nome duplicato, il server di report restituirà un errore. |
Type |
Elenco delimitato da virgole che include lo spazio dei nomi completo insieme al nome dell'assembly. |
Visible |
Il valore false indica che l'estensione per il recapito non deve essere visibile nelle interfacce utente. Se l'attributo non è incluso, il valore predefinito è true . |
Per altre informazioni sul file RSReportServer.config, vedere File di configurazione di Reporting Services.
Distribuzione dell'estensione nel server di report
Il server di report utilizza estensioni per il recapito per l'elaborazione e il recapito di notifiche o report. È necessario distribuire l'assembly di estensioni per il recapito in un server di report come assembly privato. È inoltre necessario creare una voce nel file di configurazione del server di report, ovvero RSReportServer.config.
Per distribuire un assembly di estensioni per il recapito in un server di report
Copiare l'assembly dal percorso di gestione temporanea nella directory bin del server di report in cui si desidera utilizzare l'estensione per il recapito. Il percorso predefinito della directory bin del server di report è %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportServer\bin.
Importante
Se si tenta di sovrascrivere un assembly di estensioni per il recapito esistente, è necessario arrestare il servizio del server di report prima di copiare l'assembly aggiornato. Riavviare il servizio dopo il completamento della copia dell'assembly.
Dopo aver copiato il file di assembly, aprire il file RSReportServer.config Il file RSReportServer.config si trova nel %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<Directory InstanceName>\Reporting Services\ReportServer. È necessario immettere una voce nel file di configurazione per il file di assembly di estensioni per il recapito. È possibile aprire il file di configurazione in Microsoft Visual Studio o in un semplice editor di testo, ad esempio Blocco note.
Individuare l'elemento
Delivery
nel file RSReportServer.config. È necessario immettere una voce per l'estensione per il recapito appena creata nel percorso seguente:<Extensions> <Delivery> <Your extension configuration information goes here> </Delivery> </Extensions>
Aggiungere una voce per l'estensione per il recapito. La voce deve includere un elemento
Extension
con valori perName
eType
e può essere simile a quanto riportato di seguito:<Extension Name="My Delivery Extension Name" Type="CompanyName.ExtensionName.MyDeliveryExtensionClass, AssemblyName" />
Il valore per
Name
è il nome univoco dell'estensione per il recapito. Il valore perType
è un elenco delimitato da virgole che include una voce per lo spazio dei nomi completo della classe che implementa l'interfaccia IDeliveryExtension, seguita dal nome dell'assembly, senza l'estensione dll. Per impostazione predefinita, le estensioni per il recapito sono visibili. Per nascondere un'estensione dalle interfacce utente, come Gestione report, aggiungere un attributoVisible
all'elementoExtension
e impostarlo sufalse
.Aggiungere infine un gruppo di codice per l'assembly personalizzato che conceda l'autorizzazione
FullTrust
per l'estensione per il recapito. A tale scopo, aggiungere il gruppo di codice al file rssrvpolicy.config che si trova per impostazione predefinita in %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportServer. Il gruppo di codice può essere simile a quanto riportato di seguito:<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" Name="MyExtensionCodeGroup" Description="Code group for my delivery extension"> <IMembershipCondition class="UrlMembershipCondition" version="1" Url="C:\Program Files\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportServer\bin\MyExtensionAssembly.dll" /> </CodeGroup>
L'appartenenza URL è solo una delle numerose condizioni di appartenenza che è possibile scegliere per l'estensione per il recapito. Per altre informazioni sulla sicurezza dall'accesso di codice in SSRS, vedere Sviluppo sicuro (Reporting Services)
Distribuzione dell'estensione in Gestione report
Se l'estensione per il recapito implementa l'interfaccia ISubscriptionBaseUIUserControl, può essere utilizzata con la pagina di sottoscrizione di Gestione report. Per rendere disponibile l'interfaccia utente di sottoscrizione, è necessario distribuire l'estensione in Gestione report.
Per distribuire un assembly di estensioni per il recapito in Gestione report
Copiare l'assembly dal percorso di gestione temporanea nella directory bin di Gestione report. Il percorso predefinito della directory bin di Gestione report è %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportManager\bin.
Dopo aver copiato il file di assembly, aprire il file RSReportServer.config Il file RSReportServer.config si trova nel %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<Directory InstanceName>\Reporting Services\ReportServer. È necessario immettere una voce nel file di configurazione per il file di assembly di estensioni per il recapito. È possibile aprire il file di configurazione in Visual Studio .NET o in un semplice editor di testo, ad esempio Blocco note.
Individuare l'elemento
DeliveryUI
nel file RSReportServer.config. È necessario immettere una voce per l'estensione per il recapito appena creata nel percorso seguente:<Extensions> <DeliveryUI> <Your extension configuration information goes here> </DeliveryUI> </Extensions>
Aggiungere una voce per l'estensione per il recapito. La voce deve includere un elemento
Extension
con valori perName
eType
e può essere simile a quanto riportato di seguito:<Extension Name="My Delivery Extension Name" Type="CompanyName.ExtensionName.MyDeliveryUIExtensionClass, AssemblyName" />
Il valore per
Name
è il nome univoco dell'estensione per il recapito. Il valore perType
è un elenco delimitato da virgole che include una voce per lo spazio dei nomi completo della classe che implementa l'interfaccia ISubscriptionBaseUIUserControl, seguita dal nome dell'assembly, senza l'estensione dll.Importante
Il valore dell'attributo
Name
deve essere identico per le voci dei file di configurazione del server di report e di Gestione report. Se non sono identici, la configurazione del server non è valida.Aggiungere infine un gruppo di codice per l'assembly personalizzato che conceda l'autorizzazione
FullTrust
per l'estensione per il recapito. A tale scopo, aggiungere il gruppo di codice al file RSmgrpolicy.config che si trova per impostazione predefinita in C:\Programmi\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportManager. Il gruppo di codice può essere simile a quanto riportato di seguito:<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" Name="MyExtensionCodeGroup" Description="Code group for my delivery UI extension"> <IMembershipCondition class="UrlMembershipCondition" version="1" Url="C:\Program Files\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportManager\bin\MyExtensionAssembly.dll" /> </CodeGroup>
L'appartenenza URL è solo una delle numerose condizioni di appartenenza che è possibile scegliere per l'estensione per il recapito. Per altre informazioni sulla sicurezza di accesso al codice in SSRS, vedere Secure Development (Reporting Services)
Verifica della distribuzione
È possibile verificare se l'estensione per il recapito è stata distribuita correttamente nel server di report tramite il metodo ListExtensions del servizio Web. È inoltre possibile aprire Gestione report e verificare che l'estensione sia inclusa nell'elenco delle estensioni per il recapito disponibili per una sottoscrizione. Per altre informazioni su Gestione report e sottoscrizioni, vedere Sottoscrizioni e recapito (Reporting Services).
Vedere anche
Implementazione di un'estensione per il recapito
Libreria di estensioni di Reporting Services