ActiveReports for .NET 18.0J
クロスタブレポート サンプル
ActiveReportsユーザーガイド > サンプルとチュートリアル > サンプル > Samples > APIのサンプル > セクションレポートのサンプル > クロスタブレポート サンプル

本サンプルでは、クロスタブレポートを作成する方法を紹介します。

フォルダ

Visual Basic.NET

<User Folder>\ActiveReportsNET18\Samples\API\Section\CrossTabReport\VB.NET

C#

<User Folder>\ActiveReportsNET18\Samples\API\Section\CrossTabReport\C#

実行時の機能

サンプルを実行すると、週間、今月、四半期および年間売上高を、カテゴリ別、商品別に一覧表として表示します。

メモ: サンプルを実行するには、NorthWindデータベース(..\Samples\Data\Nwind.mdb)へのアクセス権限が必要です。データファイルにアクセスできない場合は、上記フォルダを作成して各データファイルをその中に配置するか、またはお客様の環境に合わせてプロジェクト内のデータファイルへの参照パスを変更してください。

プロジェクトの構造

StartForm

Viewerコントロールを配置し、レポートを表示します。

ProductWeeklySalesレポート

通常のレポートで明細行を表示するために使用するDetailセクションを非表示とし、グループフッタを用いて週間売上等の集計値を一覧表示しています。

注文日(OrderDate)をキーにして、そのデータが週間、今月、四半期、年間、前年度四半期のそれぞれに含まれるかどうかを振り分け、各アンバウンドフィールドに値を設定します。各アンバウンドフィールドの値は、グループフッタに配置した集計用の各Fieldコントロールによって自動的に集計されます。

ReportHeader セクション

レポートタイトルや会社情報を表示します。

PageHeaderセクション

データの各項目、各集計期間を示すラベルを表示します。

ghCategoryセクション

セクションのDataFieldプロパティをCategoryNameに設定しています。この設定、およびデータの並び替えにより、カテゴリ毎にグループ化されて表示されます。また、カテゴリを表示するためのTextBoxコントロールを配置し、さらに、次のセクション(gfProductセクション)に重ねて表示するために、UnderlayNextプロパティを「True」に設定しています。

ghProductセクション

セクションを非表示に設定していますが、DataFieldプロパティに「ProductName」を設定することにより、対応するフッタセクション(gfProductセクション)で商品毎の集計を実現しています。

Detailセクション

セクションを非表示に設定していますが、データソースにバインドした4つのTextBoxコントロールを配置しています。また、セクションのFormatイベントを利用して、非表示のtxtDetProductテキストボックスの値を、_sProductName変数に設定します。イベントの詳細については、「イベント」を参照してください。

gfProductセクション

カテゴリ内の商品毎の明細データを表示します。

Formatイベントでは、先にDetailセクションのFormatイベントで取得しておいた商品名(_sProductName変数)を商品(txtProductテキストボックス)に設定します。また、増減(txtPQTDChangeテキストボックス)の値については、今年度の四半期の売上額から前年度の四半期の売上額を差し引いて計算しており、値がマイナスの場合には背景色を赤色に設定しています。

各商品の売上数、および売上額は、以下のプロパティを使って集計します。

  • SummaryFunc:Sum(デフォルト値)
    値の加算を行います。
  • SummaryGroup:ghProduct
    現在の商品グループに含まれている値を集計します。
  • SummaryRunning:None(デフォルト値)
    商品グループが変更する際に、値がリセットされます。
  • SummaryType:SubTotal
    現在のグループの集計を行います。

gfCategoryセクション

カテゴリ毎の集計値を表示します。

各商品の売上数および売上額は、以下のプロパティを使って集計します。

  • SummaryFunc:Sum(デフォルト値)
    値の加算を行います。
  • SummaryGroup:ghCategory
    現在のカテゴリグループに含まれている値を集計します。
  • SummaryRunning:None(デフォルト値)
    カテゴリグループが変更する際に、値がリセットされます。
  • SummaryType:SubTotal
    現在のグループの集計を行います。

PageFooterセクション

セクションを非表示に設定しています。

ReportFooterセクション

セクションを非表示に設定しています。

関連トピック