チュートリアル : ローカル処理モードでのデータベース データ ソースと ReportViewer Windows フォーム コントロールの使用

このチュートリアルでは、Windows フォーム アプリケーション プロジェクトでレポートを作成する方法と、アプリケーションのユーザーがレポートを表示できるように ReportViewer コントロールを Windows フォームに追加する方法について説明します。

必須コンポーネント

このチュートリアルを使用するには、AdventureWorks2008 サンプル データベースへのアクセス権が必要です。詳細については、「チュートリアル: AdventureWorks データベースのインストール」を参照してください。

Windows フォーム アプリケーション プロジェクトにレポートを追加するには、次の手順を実行します。この例では、Microsoft Visual Basic でアプリケーションを作成します。

新しい Windows アプリケーション プロジェクトの作成

  1. Visual Studio を開きます。[ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。

  2. [インストールされたテンプレート] ペインで [Visual Basic] を選択し、[Windows フォーム アプリケーション] を選択します。Visual Studio の起動設定によっては、[Visual Basic] ノードが [他の言語] に表示される場合もあります。

  3. [名前] ボックスに、プロジェクト名を「ReportWalkthrough」と入力します。

  4. [場所] ボックスにプロジェクトを保存するディレクトリを入力するか、[参照] をクリックしてディレクトリを選択します。

  5. [OK] をクリックします。

    Windows フォーム デザイナーが開き、作成したプロジェクトの Form1.vb が表示されます。

データ ソース接続と DataTable の定義

  1. [プロジェクト] メニューの [新しい項目の追加] をクリックします。

  2. [新しい項目の追加] ダイアログ ボックスで、[データセット] をクリックします。

  3. データセットの名前を入力して [追加] をクリックします。これにより、新しい XML スキーマ ファイルがプロジェクトに追加され、データセット デザイナーが開きます。既定の名前は DataSet1.xsd です。

  4. データセット デザイナーツールボックスを開き、[TableAdapter] をデータセット デザイン画面にドラッグします。すると、TableAdapter 構成ウィザードが開きます。

  5. [データ接続の選択] ページで [新しい接続] をクリックします。

  6. Visual Studio で初めてデータ ソースを作成する場合は、[データ ソースの選択] ページが表示されます。[データ ソース] ボックスで [Microsoft SQL Server] を選択します。

  7. [接続の追加] ページで、次の手順を実行します。

    • [サーバー名] ボックスに、AdventureWorks2008 データベースが配置されているサーバーの名前を入力します。

      SQL Server Express の既定のインスタンスは (local)\sqlexpress です。

    • [サーバーにログオンする] セクションで、データにアクセスするためのオプションを選択します。既定値は [Windows 認証 (統合セキュリティ) を使用する] です。

    • ドロップダウン リストで [AdventureWorks2008] をクリックします。

    • [OK] をクリックしてウィザードに戻ります。

  8. 前の手順で [SQL Server 認証を使用する] を指定した場合は、機密性の高いデータを文字列に含めるか、または情報をアプリケーション コードに設定するかを指定するオプションを選択します。

  9. [次へ] をクリックします。

  10. [接続文字列をアプリケーション構成ファイルに保存する] ページで、接続文字列の名前を入力するか、既定の AdventureWorks2008ConnectionString をそのまま使用します。[次へ] をクリックします。

  11. [コマンドの種類を選択します] ページで [SQL ステートメントを使用する] を選択し、[次へ] をクリックします。

  12. [SQL ステートメントの入力] ページで、AdventureWorks2008 データベースからデータを取得するための次の Transact-SQL クエリを入力し、[完了] をクリックします。

    SELECT d.name as Dept, s.Name as Shift, 
        e.BusinessEntityID as EmployeeID
    FROM (HumanResources.Department d
    INNER JOIN HumanResources.EmployeeDepartmentHistory e
        ON d.DepartmentID = e.DepartmentID)
    INNER JOIN HumanResources.Shift s
        ON e.ShiftID = s.ShiftID
    

    [クエリ ビルダー] ボタンをクリックし、クエリ ビルダーを使用してクエリを作成し、[クエリの実行] ボタンを使用してクエリをチェックすることもできます。クエリから必要なデータが返されない場合は、AdventureWorks の以前のバージョンを使用している可能性があります。AdventureWorks2008 バージョンの AdventureWorks のインストールの詳細については、「チュートリアル: AdventureWorks データベースのインストール」を参照してください。

  13. [生成するメソッドの選択] ページで、[完了] をクリックします。

    データセット デザイン画面に、クエリから生成された列を含む DataTable1 が表示されます。

レポート ウィザードを使用したレポートのデザイン

  1. [プロジェクト] メニューの [新しい項目の追加] をクリックします。

  2. [新しい項目の追加] ダイアログ ボックスで、[レポート ウィザード] をクリックします。

  3. レポート ファイル名を入力します。レポート名は、既定で Report1.rdlc になります。[追加] をクリックします。

    これにより、レポート ウィザードが起動されます。

  4. [データセットのプロパティ] ページの [データ ソース] ボックスで、作成した DataSet を選択します。

    [使用できるデータセット] ボックスの一覧が更新され、作成した DataTable が表示されます。

  5. [次へ] をクリックします。

  6. [フィールドの配置] ページで、次の操作を行います。

    1. [使用できるフィールド] から [Dept][行グループ] ボックスにドラッグします。

    2. [使用できるフィールド] から [Shift][列グループ] ボックスにドラッグします。

    3. [使用できるフィールド] から [EmployeeID][値] ボックスにドラッグします。

    4. Sum(EmplyeeID) の横にある矢印をクリックし、[Count] を選択します。

  7. [次へ] を 2 回クリックし、[完了] をクリックします。

    .rdlc ファイルが作成され、レポート デザイナーで開かれます。デザインした Tablix がデザイン画面に表示されます。

  8. .rdlc ファイルを保存します。

アプリケーションへの ReportViewer コントロールの追加

  1. プロジェクトの Form1.vb ファイルをデザイン モードで開きます。

  2. [フォーム] のプロパティ ウィンドウで [サイズ] プロパティを展開し、[高さ] プロパティを 700 に設定します。

  3. ツールボックスの [レポート] セクションから ReportViewer コントロールをフォームにドラッグします。

  4. 右上隅のスマート タグ グリフをクリックして、ReportViewer コントロールのスマート タグ パネルを開きます。[レポートの選択] ボックスをクリックし、一覧から、作成したレポートを選択します。レポートを選択すると、そのレポートで使用されているデータ ソースのインスタンスが自動的に作成されます。DataSet (DataTable の ADO.NET コンテナー)、TableAdapter コンポーネント、およびレポートで使用されている各データ ソースに対応する BindingSource オブジェクトのインスタンスを作成するコードが生成されます。

  5. 開いているスマート タグ パネルで、[親コンテナーにドッキングする] をクリックします。

アプリケーションのビルドと実行

  1. [ビルド] メニューの [ReportWalkthrough のビルド] をクリックします。ビルド プロセスの一環としてレポートがコンパイルされます。一部のエラー (レポートで使用されている式の構文エラーなど) は、タスク一覧に追加することによって記録されます。

  2. F5 キーを押してアプリケーションを実行し、フォーム内にレポートを表示します。

参照

関連項目

ReportViewer.Drillthrough

LocalReport.SubreportProcessing

ReportViewer.Drillthrough

LocalReport.SubreportProcessing

概念

ReportViewer タスクのスマート タグ パネルの使用

その他の技術情報

サンプルとチュートリアル