2014年1月22日水曜日

【VB.NET】ReportViewer レポートを表示する①。

ReportViewerを使ってSQLSereverのデータテーブルの内容をレポートに表示します。
大まかな手順は以下の通りになります。

  1. プロジェクトにデータセットを追加しデータテーブルを用意します。
  2. プロジェクトにレポートファイルを追加しレポートをデザインします。
  3. フォームにReportViewerを配置します。
  4. コードにデータ取得とReportrViewerの処理を記述します
以上の手順をReportViewerタスクの「新しいレポートをデザインします」を使うとウィザードが全て行ってくれます。


使用例:売上データテーブルの内容をレポートに表示します。

売上データのテーブル定義
インスタンス名SQLEXPRESSデータベース名SAMPLE_DB
論理テーブル名売上データ物理テーブル名T_SALES
列定義
No論理名物理名データ型Nullを許容主キー
1NONOnumeric(8,0)NoYes
2店舗CDSHOP_CDnvarchar(4)No
3商品CDITEM_CDnvarchar(4)No
4売上数UNIT_SALESnumeric(8,0)No
5売上額SALES_AMOUNTnumeric(8,0)No

1.フォームにReportViewerコントロールを配置しReportViewerタスクを開き
 「新しいレポートをデザインします」を選択します。

2.データソース構成ウィザードが開くのでデータソースの種類に「データベース」を選択します。
3.データベースのモデルに「データセット」を選択します。

4.データ接続の選択で接続が無い場合は「新しい接続」をクリックします。

5.接続情報を入力します。

6.接続を保存します。
7.表示するデータベースオブジェクトを選択し完了します。

8.レポートウィザード開くのでデータソースとデータセットを選択します。
9.使用できるフィールドから表示したいフィールドをΣ値へをドラグ&ドロップで追加します。
10.レイアウトを選択します。
11.スタイルを選択し完了します。
12.プロジェクトにデータセットとレポートファイルが追加されています。
13.ReportViewerタスクのレポートの選択で追加されたレポートを選択します。
14.フォームに「データセット」「データアダプター」「バインディングソース」が追加されています。

15.フォームのLoadイベントにはデータ取得とReportViewerの処理が記述されています。
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: このコード行はデータを 'SAMPLE_DBDataSet.T_SALES' テーブルに読み込みます。必要に応じて移動、または削除をしてください。
        Me.T_SALESTableAdapter.Fill(Me.SAMPLE_DBDataSet.T_SALES)

        Me.ReportViewer1.RefreshReport()
    End Sub
End Class

16.実行します。
実行結果



0 件のコメント:

コメントを投稿