表示拡張機能の概要
表示拡張機能は、レポート サーバーのコンポーネントまたはモジュールで、レポートのデータとレイアウト情報をデバイス固有の形式に変換します。 SQL Server Reporting Services には、HTML、Excel、Word、PowerPoint、CSV またはテキスト、XML、画像、データ フィード、PDF など、いくつかの表示拡張機能が含まれています。 他の表示拡張機能を作成して、他の形式でレポートを生成できます。
Note
どの表示拡張機能を利用できるかは、RSReportServer.config ファイルのインストール済み拡張機能の一覧で確認できます。
次の表は、Reporting Services が備えている表示拡張機能の説明です。
拡張機能の名前 | 説明 |
---|---|
WORDOPENXML | Microsoft Word で DOCX ファイルとしてレポートをレンダリングします。 形式は、レポート ツール バーの [エクスポート] ドロップダウンに Word として表示されます。 |
WORD | Microsoft Word でレポートを DOC ファイルとして表示します。 形式は下位互換性のために含まれるため、レポート ツール バーの [エクスポート] ドロップダウンには表示されません。 |
EXCELOPENXML | Microsoft Excel のレポートを XLSX ファイルとしてレンダリングします。 この形式は、レポート ツール バーの [エクスポート] ドロップダウンに Excel として表示されます。 |
EXCEL | Microsoft Excel のレポートを XLS ファイルとしてレンダリングします。 形式は下位互換性のために含まれるため、レポート ツール バーの [エクスポート] ドロップダウンには表示されません。 |
PPTX | PowerPoint のレポートを PPTX ファイルとしてレンダリングします。 形式は、レポート ツール バーの [エクスポート] ドロップダウンに PowerPoint として表示されます。 |
レポートを PDF に表示します。 | |
IMAGE | ページ指向形式でレポートを表示します。 形式は、レポート ツール バーの [エクスポート] ドロップダウンに TIFF ファイルとして表示されます。 |
MHTML (HTML 表示拡張機能の一部) | MHTML 形式でレポートを表示します。 レポートがブラウザーで開きます。 形式は、レポート ツール バーの [エクスポート] ドロップダウンに MHTML (Web アーカイブ) として表示されます。 |
CSV | コンマ区切り形式でレポートを表示します。 レポートは、CSV ファイル形式に関連付けられている表示ツールで開きます。 形式は、レポート ツール バーの [エクスポート] ドロップダウンに CSV (コンマ区切り) として表示されます。 |
XML | XML 形式でレポートを表示します。 レポートは任意のブラウザーで開きます。 この XML 出力に追加の変換を適用すると、独自のレンダリング拡張機能の開発を回避するコスト効率の高い方法になる可能性があります。 形式は、レポート ツール バーの [エクスポート] ドロップダウンにレポート データを含む XML ファイルとして表示されます。 |
ATOM | データ フィード形式でレポートを ATOMSVC ファイルとしてレンダリングします。 この形式は、レポート ツール バーの [エクスポート] ドロップダウンにデータ フィードとして表示されます。 |
HTML4.0 (HTML レンダリング拡張機能の一部) | ブラウザーが HTML5 をサポートしていない場合は、HTML4.0 が使用されます。 |
HTML5 (HTML レンダリング拡張機能の一部) | HTML5 は、最初にレポートをブラウザーに表示するために使用される形式です。 ブラウザーで HTML5 がサポートされている場合は、それが使用される形式です。 それ以外の場合は、HTML 4.0 が使用されます。 |
Rpl | RPL は、レポート サーバーで使用される中間形式であり、既定の表示拡張機能です。 |
NULL | 特定の形式にレポートを表示しません。 この表示拡張機能はレポートをキャッシュするのに有用です。 Null レンダリングは、スケジュールされた実行または配信で使用する必要があります。 |
推奨される形式とその使用方法の詳細については、「レポートのエクスポート (レポート ビルダーおよび SSRS)」を参照してください。
Microsoft によって Reporting Services に実装されたそれぞれの表示拡張機能は、共通のインターフェイスを使用します。 この一般的なインターフェイス セットにより、各拡張機能が同等の機能を実装し、レポート サーバーのコアでのレンダリング コードの複雑さを軽減できます。
表示オブジェクト モデル
レポートが処理されると、その処理結果は、表示オブジェクト モデル (ROM) として知られる、公開オブジェクト モデルになります。 この表示オブジェクト モデルは、処理されたレポートの内容、レイアウト、およびデータを定義するクラスのコレクションです。 開発者は、ROM を使用して、Reporting Services のカスタム表示拡張機能を設計、開発、展開できます。 ROM は、レポートの XML 定義とユーザーにより定義されたレポート データが、レポート サーバーにより処理される際に作成されます。 処理が完了すると、表示拡張機能によりこの公開オブジェクト モデルが使用され、レポートの出力が定義されます。 ROM の利用可能なパブリック クラスは、Microsoft.ReportingServices.OnDemandReportRendering 名前空間に定義されています。
カスタム レンダリング拡張機能を記述する
カスタム表示拡張機能の作成を決める前に、より簡単な代替手段を評価する必要があります。 次のようにすることができます。
既存の拡張機能のデバイス情報の設定を詳細に指定して、表示される出力をカスタマイズする。
XML 表現形式の出力に XSL 変換 (XSLT) を組み合わせることで、カスタムの形式と表現機能を追加する。
カスタム表示拡張機能の記述は難しい作業です。 表示拡張機能は、一般的には、レポートの要素のあらゆる組み合わせをサポートする必要があり、多くのクラス、インターフェイス、メソッド、およびプロパティを実装しなければなりません。 Reporting Services に含まれていない形式でレポートをレンダリングする必要があり、レンダリング拡張機能の独自のマネージ コード実装を記述する場合、表示拡張機能コードは、レポート サーバーに必要な Microsoft.ReportingServices.OnDemandReportRendering.IRenderingExtension インターフェイスを実装する必要があります。