ダッシュボードは、ActiveReportsでデザインできる最新のレポート形式です。このレポート形式の主な機能については、「ダッシュボード」を参照してください。
詳しく理解するために、対話的なダッシュボードレポートを作成してみましょう。このレポートでは、ListとChartコントロールを使用して2つのデータセットのデータを視覚化し、[パラメータの適用]アクションを使用してデータを操作します。詳細については、「アクションパラメータ」を参照してください。
このチュートリアルでは、単体のデザイナで新しいレポートを作成する方法を紹介します。
新しいレポートを作成する
- デザイナアプリにて、[新規作成]をクリックします。
- [新規レポート]ダイアログでは、[ダッシュボード]を選択し、[次へ]をクリックします。
レポートをデータ連結しデータセットを追加する
レポートをデータソースに接続する
- [新規ダッシュボード] > [データソース種類の選択]では、[SQLite]を選択し、[次へ]をクリックします。
- データベースパスを指定するには、[開く]ボタンをクリックし、目的のファイル(たとえば、C:\Data\reels.db)に移動します。詳細については、「SQLite」および「ActiveReportsの構成ファイル」を参照してください。
-
[次へ]をクリックし、有効なクエリを追加してデータセットを構成します。
データセットを追加する
- [SQLiteクエリの設定]画面で、[名前]に「Genre」と入力し、[テキスト]に「SELECT * FROM Genre」のSQLクエリと入力します。
- [OK]をクリックしてダイアログを閉じます。データセット(Genre)とクエリされたフィールド(GenreID、GenreName)が[レポートエクスプローラ]で、追加したデータソースの子ノードとして表示されます。
- [追加]をクリックして、もう一つのデータセット(名前をSalesByGenreに設定)を追加します。
- [テキスト]に次のSQLクエリを入力します。
SELECT * FROM SalesByGenre
.
- [OK]をクリックしてダイアログを閉じます。データセット(Genre)とクエリされたフィールドが[レポートエクスプローラ]で、追加したデータソースの子ノードとして表示されます。
SalesByGenreデータセットには次のフィールドが含まれます。
- GenreID
- GenreName
- StorePrice
- SaleID
- Quantity
- SalesID
- SaleDate
- Profit
-
[次へ]をクリックします。レポートウィザードの最後の画面で、レポートの概要を確認し、[作成]をクリックすると、SQLiteデータソースを含むレポートが正常に追加されます。
データセットにフィールドを追加する
- [レポートエクスプローラ]で、Genreデータセットを右クリックし、[編集]を選択します。
- [データセット]ダイアログで、[フィールド]ページに移動し、新しいフィールドを追加します。名前を「GenreIDInt」に設定し、値を「=Convert.ToInt32([GenreID])」に設定します。
- [OK]をクリックして変更を保存します。
レポートパラメータを追加する
- [レポートエクスプローラ]で、[パラメータ]を右クリックし、[パラメータの追加]を選択します。
-
[レポート - パラメータ]ダイアログで、新しいパラメータを追加して、以下のプロパティを設定します。
[全般]タブ
- 名前:paramGenreID
- データ型:Integer
- 「すべて選択」を選択した時の値(未指定の場合、すべての値が指定されます):[複数の値を許可]と[非表示]の横にあるチェックボックスを選択します。
-
[使用できる値]タブでは、[クエリから値を取得]の横にあるチェックボックスを選択します。
- データセット:Genre
- 値:GenreIDInt
- ラベル:GenreID
-
[既定値]タブでは、[クエリから値を取得]の横にあるチェックボックスを選択します。
- データセット:Genre
- 値:GenreIDInt
- [OK]をクリックしてダイアログを閉じ、コレクションにパラメータを追加します。
レポートのレイアウトを作成する
-
Listを追加する
- ツールボックスからListコントロールをドラッグして、デザイン面にドロップします。
- リスト内に配置されたコントロールをカラム形式のレポートレイアウトで表示するには、[プロパティ]ウィンドウに移動して、Listコントロールのプロパティを次のように設定します。
- DataSetName:Genre
- RowsOrColumnsCount:5
-
Listに[パラメータの適用]アクションを追加する
- [プロパティ]ウィンドウからActionプロパティの横にある省略記号<...>をクリックし、[List-Action]ダイアログを開きます。
- [種類]に[パラメータの適用]オプションを選択し、次の値を設定します。
- Name:paramGenreID
- Type:Toggle
- Value:=Fields!GenreID.Value
- [OK]をクリックしてダイアログを閉じます。
Listデータ領域にコントロールを追加する
- TextBoxコントロールをListデータ領域にドラッグ&ドロップし、[値]を「=Fields!GenreName.Value」に設定します。
- CheckBoxコントロールをTextBoxの左側にドラッグ&ドロップし、Checkedプロパティを次の式に設定します。
=IndexOf(Parameters!paramGenreID.Value, Fields!GenreIDInt.Value)>-1.
チャートを作成する
一定期間における利益を示すチャートを作成してみましょう。
- ChartコントロールをListデータ領域の下にドラッグ&ドロップします。チャートウィザードが表示され、データセットとチャートの種類を選択できます。
- データセット名を「SalesByGenre」に設定し、[種類の設定]を「折れ線」に設定します。
- [次へ]をクリックし、折れ線の設定を指定します。横軸に利益を表示するデータ系列値を定義します。
-
[データ]では、新しい値を追加し、対応する集計を設定します。
- [カテゴリ]では、フィールドを「=[SaleDate]」に設定し、並べ替えを「Ascending」に設定します。
- [次へ]をクリックして、グラフをプレビューします。
- [完了]をクリックして、グラフを追加します。
- Chartコントロールの幅をListデータ領域の幅まで増加します。
- [プロット-Plot1]を選択した状態で、[プロパティ]ウィンドウに移動し、LineAspectプロパティを「Spline」に設定します。
- レポートエクスプローラで[X軸 - [Plot1]]を選択した状態で、[プロパティ]ウィンドウに移動し、ラベル > Formatを「d」に設定し、ラベル > LabelsAngleを「-45」に設定します。
- レポートエクスプローラで[Y軸 - [Plot1]]を選択した状態で、[プロパティ]ウィンドウに移動し、ラベル > Formatを「c」に設定します。
Chartコントロールにフィルタを追加する
- レポートエクスプローラでは、「Chart1」を選択します。
- [プロパティ]ウィンドウからFiltersプロパティの横にある省略記号<...>をクリックし、[Chart - フィルタ]ダイアログを開きます。
-
[フィルタ]ページでは、[追加(+)]をクリックします。
- 式:=Fields!GenreID.Value
- 演算子:In
- 値 > 式:=Parameters!paramGenreID.Value.
- [OK]をクリックします。
カスタマイズを設定する
グラフがデータ値で構成されたので、[チャートウィザード-プレビュー]画面からスマートパネルを使用して、グラフ要素をカスタマイズします。詳細については、「折れ線グラフの作成」を参照してください。
レポートをプレビューする
チャートの構成とカスタマイズが完了したら、レポートをプレビューします。Webデザイナでレポートをプレビューする場合は、System.Data.SQLiteまたはSystem.Data.SQLite.Coreパッケージをインストールし、ActiveReports.configファイルをプロジェクトに追加する必要があります。