【ActiveReports】ページ単位でグラフを出力

普通にグラフを出力すると1ページ目に全データを集約したグラフが出力され、2ページ目以降はデータ行だけになる。

各ページにグラフを出力したい場合はサブレポートを使用する。

 

サブレポート

  • レポートエクスプローラーからパラメータを右クリックして追加。名前は親レポートで後で指定するのでわかりやすい名前を付けること
  • データセットでフィルタを設定する。絞り込み対象の列に対し前述のパラメータが一致するものを対象にする。(絞り込むだけなのでクエリの編集でもいい)
  • chartコントロールを配置

 

親レポート

  • listコントロールを張り付けて、その上にサブレポートを配置する
  • listのプロパティから「詳細行のグループ化 - 全般」でグラフに出したいグループ単位で式を設定
  • サブレポートのプロパティから「データ - Parameters」を指定、サブレポートで設定したパラメータ名を入力し、渡したいパラメータ(グループ単位で指定した値)を設定

 

空白ページが出力される場合はサブレポートの領域がはみ出している可能性が高い

一時的にサブレポートの背景色を変えると調整しやすい