次の方法で共有


リモート処理用の ReportViewer の構成

ReportViewer コントロールは、Microsoft SQL Server 2005 Reporting Services レポート サーバーの処理機能を使用するように構成できます。レポート サーバーは、データを処理して、レポートを出力形式で表示します。ReportViewer コントロールは、レポート サーバーから完成したレポートを取得して画面上に表示します。

サーバー レポートを使用するには、SQL Server 2005 Reporting Services レポート サーバーへのアクセス権が必要です。また、選択するレポートがレポート サーバーにパブリッシュされている必要があります。ReportViewer コントロールには、SQL Server 2005 SOAP 実行エンドポイント経由でのみ公開される情報が必要です。このコントロールでは、SQL Server 2000 Reporting Services レポート サーバーで実行されたレポートはサポートされません。

ブラウザ ウィンドウを開き、URL アドレスにレポート サーバーの URL とレポート パスを入力することによって、レポートへのアクセス権があるかどうかを確認できます。レポート サーバーへの接続を構成する場合は、レポートを表示する権限を持つアカウントを使用して接続します。既定では、スレッド ユーザーです。Windows アプリケーションでは、スレッド ユーザーは、通常、ユーザー アカウントです。ASP.NET アプリケーションでは、通常、ASP.NET アカウントです。接続を構成する方法にかかわらず、レポート サーバーに、接続に使用されるアカウントへのレポート アクセス権を許可するロールの割り当てがあることを確認する必要があります。接続の構成の詳細については、「IReportServerCredentials」を参照してください。

リモート処理用の ReportViewer を構成する方法

リモート処理用に ReportViewer コントロールを構成するには、サーバー レポートをコントロールで使用するように指定します。サーバー レポートを選択するには、次の手順を実行します。

  1. ツールボックスの [データ] セクションの ReportViewer コントロールを、プロジェクトのフォームまたは Web ページに追加します。

  2. [ReportViewer タスク] スマート タグ パネルの [レポートの選択][サーバー レポート] を選択します。

  3. [レポート サーバー] ボックスに、レポート サーバーの URL を入力します。既定の URL 構文は https://localhost/reportserver です。インストールで使用される実際の URL は、レポート サーバーの仮想ディレクトリの設定がどのように構成されているかによって異なる場合があります。

  4. [レポート パス] ボックスに、パブリッシュされたレポートの完全修飾パスを入力します。レポート パスは、最初にスラッシュ ( / ) を付ける必要があります。パスに、レポートの URL パラメータを含めないでください。パスは、レポート サーバー フォルダの名前空間にあるフォルダとレポートの名前で構成されます。たとえば、レポート サーバーに SQL Server 2005 のサンプル レポート Company Sales をインストールすると、レポート パスは /AdventureWorks Sample Reports/Company Sales のようになります。

  5. アプリケーションをビルドまたは配置して、レポートがアプリケーションに正しく表示されることを確認します。HTTP プロキシのエラーが発生する場合は、レポート サーバーの URL が正しいことを確認します。互換性のエラーが発生する場合は、レポート サーバーが SQL Server 2005 インスタンスであることを確認します。

  6. ReportViewer コントロールを選択して、[プロパティ] ウィンドウを開きます。

  7. ReportViewer コントロールでプロパティを設定して、[レポート] ツール バーと実行時機能を構成します。各プロパティの詳細については、リファレンス ドキュメントを参照してください。詳細については、「ReportViewer のプロパティ (ReportViewer Properties)」を参照してください。

サーバー レポートの特性について

サーバー レポートとローカルで処理されるレポートでは、表示と機能に重要な違いがあります。次の表では、リモートで処理されるサーバー レポートの特性について説明します。

レポート処理

サーバー レポートは、SQL Server 2005 Reporting Services レポート サーバー上で実行されます。サーバー レポートは、SQL Server 2005 バージョンのレポート デザイナで作成されたレポート定義 (.rdl) ファイルからパブリッシュされます。.rdl ファイルの構成は、ASP.NET または Windows アプリケーション プロジェクトで作成する .rdlc ファイルの構成と多少異なります。レポート定義ファイルは、簡単に調整して、レポート サーバーまたはコントロールで実行できます。.rdl ファイルと .rdlc ファイルの違いの詳細については、「RDL と RDLC ファイルの変換」を参照してください。

データ処理

サーバー レポートは、結果セットに接続して処理するためにレポート サーバーのデータ処理拡張機能を使用します。既定のデータ処理拡張機能は、SQL Server、Analysis Services、SQL Server Integration Services、Oracle、SAP NetWeaver® Business Intelligence、XML、ODBC、および OLE DB データ ソース用に提供されています。カスタム データ処理拡張機能を作成または使用して、その他の種類のデータもサポートすることができます。

クライアント レポートとは異なり、サーバー レポートでは、レポート定義にデータ ソースの接続情報と 1 つ以上のクエリが含まれます。サーバー レポートの場合、データ処理とレポート処理が統合されます。このため、サーバー レポートには、クエリ パラメータにマッピングするレポート パラメータ、または実行時にクエリ結果を組み込む式が含まれる場合があります。

パラメータ化

サーバー レポートには、レポートの上部にパラメータ入力領域を含めることが可能で、ユーザーはクエリで使用するパラメータ値を入力または選択できます。クライアント レポート定義では、フォームまたは Web ページでパラメータ入力領域を指定する必要があります。

外部サーバーへの接続

サーバー レポートによって使用されるデータ ソースは、通常、別のサーバーの外部データ ソースからデータを取得します。アプリケーションでサーバー レポートを実行する場合は、レポート サーバーがレポートの外部データ ソースに接続してデータを取得する方法を理解する必要があります。レポートで Windows 統合セキュリティを使用する場合は、ユーザー セキュリティ トークンを他のコンピュータに渡すことができる回数に制限があります。アプリケーションを介してレポートにアクセスするユーザーは、同じトークンを使用して複数の接続を行う必要がある場合、接続エラーが発生する場合があります。レポートが資格情報を要求するように構成されている場合、またはレポート サーバーでフォームベースの認証を使用する場合、ユーザーがレポートを表示するにはユーザー名とパスワードを入力する必要がある場合があります。ReportViewer コントロールでは、要求された資格情報のページを提供しません。アプリケーションがフォームベースの認証を使用するレポート サーバーに接続する場合、アプリケーションではログオン ページを提供する必要があります。

レポートの管理

サーバー レポートは、レポート サーバー上で管理されます。レポート サーバー管理者は、レポートへのアクセス権を提供するロール割り当ての変更、データ ソース接続の再構成、レポートの更新、移動、名前の変更、または削除を行うことができます。これらのどの変更も、アプリケーションでのレポートの実行に影響を与える可能性があり、レポートを実行できなくなる場合もあります。アプリケーションでサーバー レポートを使用する場合は、アプリケーションを配置した後、どのように管理するかを把握しておく必要があります。

SQL Server Reporting Services のレポートのデザイン、データの取得、配置、およびセキュリティ設定の詳細については、SQL Server 2005 オンライン ブックを参照してください。SQL Server 2005 オンライン ブックは、SQL Server 2005 インストール メディアを介してインストールできます。また、www.microsoft.com からも入手できます。

どのような場合にリモート処理を使用するか

サーバーベースのレポートを使用すると、レポートの記憶域および管理を集中化し、レポートやフォルダにポリシーおよびセキュリティで保護されたアクセスを設定し、レポートを処理および配信する方法を制御し、さらにレポートをビジネスに使用する方法を標準化することができます。Reporting Services は、単一サーバー、分散、およびクラスタ構成にインストールできます。レポートに次の特性がある場合は、リモート処理の使用を検討してください。

  • 多くのユーザーがアクセスする。

  • 非常に複雑なクエリがあるか、大量のデータが含まれており、アプリケーションをホストするコンピュータでシステム リソースがオーバーロードする。

  • レポートがレポート サーバーに既にパブリッシュされ、作成および配置するアプリケーションにレポートを含める必要がある。

参照

概念

RDL と RDLC ファイルの変換
ReportViewer コントロールの追加と設定
ローカル処理のための ReportViewer の構成
レポートと ReportViewer コントロールの配置