コントロールのプロパティで式を使用し、値を計算することができます。式を使用し、フィールドの連結、文字列とフィールドの連結、データの総計、フィールド値に基づいた書式、フィールド値によるコントロールの表示/非表示、データの図形的な表示などを実現できます。このチュートリアルでは、式の様々な使い方について紹介します。
メモ:
- このトピックでは、Reelsデータベース(Reels.mdb)のMovieProductテーブルを使用しています。Reelsデータベース(..\ActiveReportsNET18\Samples\Data\Reels.mdb)へのアクセス権限が必要です。
- このトピックではページレポートを使用していますが、RDLレポートを使用した場合も同様の手順で作成することが可能です。
以下の手順を完了すると、次のようなレポートが作成されます。
デザイン時のレイアウト
実行時のレイアウト
Visual StudioプロジェクトにActiveReportsを追加する
- Visual Studioで新規プロジェクトを開きます([ファイル]メニューから[新規作成]、[プロジェクト]を選択)。
- [新しいプロジェクト]ダイアログで[ActiveReports 18.0J ページレポート アプリケーション]を選択し、ファイル名を「rptExpressions」に変更します。
- [OK]ボタンをクリックすると、ActiveReports 18.0J ページレポートアプリケーションが新規作成されます。デフォルトでページレポートがプロジェクトに追加されています。
レポートレイアウトの追加については、「クイックスタート」を参照してください。
レポートをデータソースに接続する
- [レポートエクスプローラ]で[データソース]ノードを右クリックして、[データソースの追加]のオプションを選択するか、[追加](+)ボタンから[データソース]を選択します。
- [レポートデータソース]ダイアログで[全般]ページを選択し、名前を「ReportData」に変更します。
- このページでは、[Reels]データベースに接続します。詳細については、「データソースとの接続」を参照してくだざい。
データセットを追加する
- [レポートエクスプローラ]で、追加したデータソースのノードを右クリックして[データセットの追加]を選択するか、[追加](+)のボタンから[データセット]を選択します。
- [データセット]ダイアログで[全般]ページに移動し、[名前]フィールドで「DVDList」を入力ます。この名前が、[レポートエクスプローラ]で追加したデータソースの子ノードとして表示されます。
-
[データセット]ダイアログの[クエリ]ページで、クエリフィールドに次のSQLクエリを入力します。
SQLクエリ |
コードのコピー
|
SELECT * FROM DVDStock
|
- クエリボックスの横にある[データセットの検証]アイコンをクリックし、クエリを検証します。
- [OK]をクリックしてダイアログを閉じます。データセットとクエリフィールドは、レポートエクスプローラのノードとして表示されます。
レポートのレイアウトを作成する
- Visual Studioのツールボックスからデザイナ面上にTableデータ領域をドラッグします。[プロパティ]ウィンドウへと移動し、DataSetNameプロパティを「DVDStock」に設定します。
- 3番目の列の列ハンドルを右クリックし、[右に列を挿入]を選択して4番目の列を追加します。
- テーブル内をクリックし、上端に各列の列ハンドルを表示して、列の幅を以下のように設定します。
テーブル列 |
幅 |
TableColumn1 |
3.5in |
TableColumn2 |
1in |
TableColumn3 |
1in |
TableColumn4 |
1in |
- [レポートエクスプローラ]から[DVDStock]データセットから詳細行に以下のフィールドをドラッグします。
データフィールド |
列名 |
TableColumn1 |
Title |
TableColumn2 |
StorePrice |
TableColumn3 |
InStock |
- 「StorePrice」が設定されている詳細行を選択し、[プロパティ]ウィンドウからFormatプロパティを「Currency」に設定します。
- 行ヘッダの左端にある行ハンドルを選択し、FontWeightプロパティを「Bold」に設定します。
- ページレポートの場合は、レポートエクスプローラからTableデータ領域を選択し、FixedSizeプロパティを「6.5in,7in」に設定します。
2つのフィールド値を掛けるためにテキストボックスにフィールド式を追加する
- 4番目の列の詳細行に次の式を追加します。
= Fields!InStock.Value* Fields!StorePrice.Value
- [プロパティ]ウィンドウから、4番目の列の詳細行のFormatプロパティを「Currency」に設定します。
- 4番目の列のヘッダ行の静的なラベルの値を[合計]に設定します。
コントロールを表示/非表示するために「Immediate If」式を追加する
- 2つのフィールド値を掛けるセル(詳細行の4番目の列)を選択し、[プロパティ]ウィンドウから、Visibilityプロパティを展開します。
- アイテムの在庫がない場合に、テキストボックスを非表示にするために、Hiddenプロパティに次の式を入力します。
=iif(Fields!InStock.Value=0, True, False)
データを図形的に表示するためにデータ可視化の式を追加する
ColorScale3関数を使用して、データの最小、平均と最大の値を示すために様々な色を表示できます。詳細については、「データ可視化」を参照してください。
[在庫]ラベルの下にある詳細行のセルを選択し、[プロパティ]ウィンドウからBackgroundColorプロパティに以下の式を設定します。
=ColorScale3(Fields!InStock.Value, 0, Avg(Fields!InStock.Value), Max(Fields!InStock.Value), "Red", "Yellow", "Green")
メモ: ColorScale3関数のパラメータでは、Value、Minimum、Average、Maximum、StartColor、MiddleColor、とEndColorを設定できます。このチュートリアルでは、ColorScale3関数の中で、集計関数(AvgとMax)が使用されています。
レポートを表示する
- デザイン時にレポートを表示するにはプレビュータブタブをクリックします。
または
関連トピック