次の方法で共有


カスタム アセンブリの配置

SQL Server Reporting Services にカスタム アセンブリを配置するには、レポート デザイナーとレポート サーバーの両方のアプリケーション フォルダーにアセンブリを配置します。 既定では、カスタム アセンブリには Reporting Services Execution アクセス許可が付与されます。 実行権限を超えるカスタム アセンブリ権限を付与するには、レポート サーバーの rssrvpolicy.config 構成ファイルと、レポート デザイナープレビュー ウィンドウの rspreviewpolicy.config 構成ファイルを編集する必要があります。 または、グローバル アセンブリ キャッシュ (GAC) にカスタム アセンブリをインストールすることもできます。

レポート デザイナーには、2 つのプレビュー モードがあります。[プレビュー] タブと、レポート プロジェクトが DebugLocal モードで開始されたときに起動されるポップアップ プレビュー ウィンドウです。 [プレビュー] タブでは、 FullTrust アクセス許可セットを使用してすべてのレポート式が実行され、セキュリティ ポリシー設定は適用されません。 ポップアップ プレビュー ウィンドウはレポート サーバーの機能をシミュレートすることを目的としているため、レポート デザイナーでカスタム アセンブリを使用するためにユーザーまたは管理者が変更する必要があるポリシー構成ファイルがあります。 このポップアップ プレビューでは、カスタム アセンブリもロックされます。 そのため、カスタム アセンブリ コードを変更または更新するには、プレビュー ウィンドウを閉じる必要があります。

Reporting Services でカスタム アセンブリを配置するには
  1. カスタム アセンブリをビルドの場所からレポート サーバーの bin フォルダーまたはレポート デザイナー フォルダーにコピーします。 レポート サーバーの bin フォルダーの既定の場所は、\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\bin %ProgramFiles%です。 レポート デザイナーの既定の場所は、\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies %ProgramFiles%です。

    カスタム アセンブリをレポート サーバーの bin フォルダーに配置すると、カスタム アセンブリを参照するレポートを発行し、レポート デザイナー フォルダーに配置すると、レポート デザイナーでカスタム アセンブリを参照するレポートを実行およびデバッグできます。

    既定の実行アクセス許可を超えてカスタム アセンブリ コードのアクセス許可を付与する必要がある場合:

  2. 適切な構成ファイルを開きます。 rssrvpolicy.config の既定の場所は、\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer %ProgramFiles%です。 rspreviewpolicy.config の既定の場所は、\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies %ProgramFiles%です。

  3. カスタム アセンブリのコード グループを追加します。 詳細については、「 セキュリティで保護された開発 (Reporting Services)」を参照してください。

カスタム アセンブリの更新

ある時点で、複数のパブリッシュされたレポートによって現在参照されているカスタム アセンブリのバージョンを更新することが必要になる場合があります。 そのアセンブリがレポート サーバーまたはレポート デザイナーの bin ディレクトリに既に存在し、アセンブリのバージョン番号が何らかの方法でインクリメントまたは変更された場合、現在発行されているレポートは正常に機能しなくなります。 レポート定義の CodeModules 要素で参照されているアセンブリのバージョンを更新し、レポートを再発行する必要があります。 カスタム アセンブリを頻繁に更新することがわかっている場合、現在発行されているレポートで新しいアセンブリを参照する必要がある場合は、特定のアセンブリのすべての更新で同じバージョン番号を使用することを検討してください。

現在発行されているレポートでアセンブリの新しいバージョンを参照する必要がない場合は、カスタム アセンブリをグローバル アセンブリ キャッシュに配置できます。 グローバル アセンブリ キャッシュは、同じアセンブリの複数のバージョンを維持できるため、現在のレポートで以前のバージョンのアセンブリを参照でき、新しく発行されたレポートで更新されたアセンブリを参照できます。 さらに、レポート サーバーのバインド リダイレクトを設定して、古いアセンブリのすべての要求を新しいアセンブリに強制的にリダイレクトするという方法もあります。 レポート サーバー Web.config ファイルとレポート サーバー ReportService.exe.config ファイルを変更する必要があります。 エントリは次のようになります。

<configuration>  
   <runtime>  
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
         <dependentAssembly>  
            <assemblyIdentity name="myAssembly"  
                              publicKeyToken="32ab4ba45e0a69a1"  
                              culture="neutral" />  
            <bindingRedirect oldVersion="1.0.0.0"  
                             newVersion="2.0.0.0"/>  
         </dependentAssembly>  
      </assemblyBinding>  
   </runtime>  
</configuration>  

こちらもご覧ください

レポートでのカスタム アセンブリの使用
アセンブリとグローバル アセンブリ キャッシュの操作