ReportViewer コントロールの追加と設定
ReportViewer コントロールの 1 つ以上のインスタンスを Windows フォームまたは ASP.NET アプリケーションに追加するには、ツールボックスの [レポート] セクションからアプリケーション内のページまたはフォームにコントロールをドラッグします。スマート タグ パネルおよびプロパティを使用して、コントロールを構成し、レポートをバインドすることができます。また、コントロールをプログラムで構成する場合は、コードを記述することもできます。
ReportViewer コントロールでは、一度に 1 つのレポートが表示されます。複数のレポートを同時に表示できるようにするには、同じページまたはフォーム上のコントロールの複数のインスタンスを結合します。また、コントロールの 1 つのインスタンスを使用して 一度に 1 つのレポートをホストすることもできます。1 つのコントロールを使用して一連のレポートを表示するには、使用する ReportViewer コントロールのインスタンスにレポートを関連付けるコードを記述する必要があります。
ReportViewer コントロールはローカル処理モードまたはリモート処理モードのいずれかで動作します。
ローカル処理モードでは、コントロールがレポート定義を開いて処理し、表示領域に表示します。ローカル処理モードでは、アプリケーションのファイル システム、ストリーム、または埋め込まれたリソースの .rdlc ファイルからレポート定義を取得します。詳細については、「ReportPath」、「LoadReportDefinition」、および「ReportEmbeddedResource」を参照してください。
リモート処理モードでは、コントロールは Reporting Services レポート サーバーから完全に処理されたレポートを取得します。リモート処理モードでは、すべてのデータの処理およびレポート処理がレポート サーバーで行われます。リモート処理モードは、通常はパブリッシュ前のレポートに使用されますが、ストリームを使用して提供するレポート定義用にリモート処理を使用することもできます。詳細については、「LoadReportDefinition」、「ReportServerUrl」、および「ReportPath」を参照してください。
重要
リモート処理モードでは .rdlc ファイルを使用できません。リモート処理モードには、ライセンス供与された SQL Server 2008 以降の Reporting Services が必要です。リモート処理は、SQL Server Reporting Services レポート サーバーをコントロールと共に使用する組織をサポートするためのものです。サーバー ソリューションにより高いスケーラビリティとパフォーマンスが実現され、サブスクリプション、キャッシュ、その他のレポート出力形式などの追加機能を使用できるようになります。リモート処理モードの詳細については、「リモート処理用の ReportViewer の構成」および「レポートと ReportViewer コントロールの配置」を参照してください。
ReportViewer コントロールの追加および設定方法
.NET Framework 3.5 または 4.0 のプロジェクトに Windows フォームまたは Web フォームを追加します。
グラフィック デザイン モードで、ReportViewer コントロールをツールボックスの [レポート] グループから Windows フォームまたは Web フォームにドラッグします。コントロールには [ReportViewer タスク] のスマート タグ パネルがあり、レポートをすぐに選択できます。
web.config ファイルは、ReportViewer コントロールの HTTP ハンドラーによって自動的に更新されます。詳細については、「ReportViewer 用の Web.config 設定」を参照してください。
注 Web フォームで ReportViewer コントロールを使用するには、ScriptManager コントロールもページに追加する必要があります。[ツールボックス] ウィンドウの [AJAX Extensions] グループから ReportViewer コントロールの上のデザイン画面に ScriptManager コントロールをドラッグします。
[ReportViewer タスク] のスマート タグ パネルで、タスクを選択してレポートを追加し、コントロールを設定します。レポートを指定すると、コントロールをローカル処理とリモート処理のどちらに設定するかが決まります。
[新しいレポートをデザインします] をクリックしてレポート ウィザードを起動し、アプリケーション内にレポート定義 (.rdlc) ファイルを作成します。クライアント側でローカルに処理されるアプリケーション内に新しいレポートを作成できます。レポート作成の詳細については、「クライアント レポート定義 (.rdlc) ファイルの作成」を参照してください。
[レポートの選択] を使用して、既存のレポート定義を選択します。プロジェクト内で定義されているローカル レポート定義 (.rdlc) ファイルを選択できます。あるいは、[サーバー レポート] を選択して SQL Server 2008 Reporting Services レポート サーバーでパブリッシュされているレポートを選択できます。
サーバー レポートを選択すると、リモート処理のコントロールが設定されます。サーバー レポートを選択するには、レポート サーバーの URL とレポートへのパスを指定する必要があります。ネイティブ モードでレポート サーバーのレポートを参照する場合、レポートのパスはスラッシュ (/) で始まります。SharePoint 統合モードのレポート サーバーのレポートを参照する場合、レポートのパスは完全修飾 URL です。次に例を示します。
ネイティブ モード: /Adventureworks 2008 Sample Reports/Company Sales 2008
SharePoint 統合モード: http://MyServer/sites/MySite/MyLibrary/Adventureworks 2008 Sample Reports/Company Sales 2008.rdl
レポートを実行するには、レポートにアクセスするためのレポート サーバーの権限が必要です。URL またはレポート パスがわからない場合は、レポート サーバー管理者に問い合わせてください。サーバー レポートの詳細については、「リモート処理用の ReportViewer の構成」を参照してください。
既存のレポート定義 (.rdlc) ファイルを選択すると、ローカル処理のコントロールが設定されます。レポートを選択するには .rdlc ファイルを選択する必要があります。プロジェクトに .rdl ファイルがある場合でも .rdl ファイルを指定することはできません。詳細については、「クライアント レポート定義 (.rdlc) ファイルの作成」を参照してください。
[親コンテナーにドッキングする] をクリックして ReportViewer コントロールの表示画面を展開し、フォームまたはページの使用できるスペースをすべて使用するようにします。このオプションは、Windows フォーム コントロールで使用できます。
[データ ソースの再バインド] をクリックして、レポートで使用するデータ テーブルとビジネス オブジェクトのデータ ソースのバインドを更新します。このオプションは、コントロールのレポートを選択すると使用できるようになります。XML を直接編集する場合など、グラフィック レポート デザイン環境以外でレポート データ ソースやデータ バインド レポート アイテムを変更する場合は、データ ソースを再バインドする必要があります。
ReportViewer コントロールを選択して、[プロパティ] ウィンドウを開きます。
ReportViewer コントロールのプロパティを設定し、表示領域の表示と可用性を決定します。各プロパティの詳細については、リファレンス ドキュメントを参照してください。詳細については、「ReportViewer のプロパティ (ReportViewer Properties)」を参照してください。ReportViewer のツール バーの詳細については、「ReportViewer ツール バーの構成と使用」を参照してください。
アプリケーションをビルドまたは配置して、フォームまたはページ内でレポートをプレビューします。
関連項目
概念
ReportViewer タスクのスマート タグ パネルの使用
ReportViewer Web サーバーおよび Windows フォーム コントロール