Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

5分でわかるActiveReports帳票(2013年度版)-ページレポートにおけるグループ化と式

ActiveReports for .NET 7.0Jで作るサンプル帳票(4)

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
目次

ページレポートのスクリプト

 式だけで高度な制御を行うことが可能ですが、より複雑な処理を実装する場合や、同じ処理を複数の箇所で使用したい場合、メンテナンス性に問題が生じる場合があります。このように複数の箇所で使用する複雑な処理は、「スクリプト」タブの中に関数として定義しておき、それを参照することができます。

 ページレポートのデザイン画面には、「スクリプト」タブがあります。これを開いてVisual Basicの構文でスクリプトを記述します。

 例えば、先程の「千円単位で表示する」という処理を関数として定義する場合、以下のようになります。

Public Function To1000Yen(value As Integer) As String
	Dim v As Single = value / 1000
	Return v & "千円"
End Function

 この関数を呼び出す場合も式を使います。具体的には「=Code.〈メソッド名〉」と記述します。例えば、以下のようになります。

=Code.To1000Yen(Fields!ProductSales.Value)

 上記の式では、関数「To1000Yen」の引数に、処理する値を与えるフィールドを設定しています。

明細行の背景色を一行おきに変更する

 式はTextBoxコントロールのValueプロパティだけでなく、他のさまざまなプロパティでも使用できます(ただしExpressionInfo型のプロパティに限ります)。

 

 例えば、明細などで一行おきに別の背景色を設定したい場合、BackGroundColorプロパティに式を設定することで実現できます。

 

 Tableの詳細行にあるTextBoxコントロールのBackGroundColorプロパティに、以下の値を設定すると、背景色を一行おきに変化させることができます。

=iif(RowNumber(Nothing) Mod 2, "PaleGreen", "White")

 ぜひ試してみてください。

Tableでのグループ化

 Tableでは、データのグループ化を行うことが可能です。

 左端の行タブを右クリックし、「グループの挿入」を選択します。グループヘッダ行とフッタ行がTableに追加されます。

グループの挿入
グループの挿入
グループを追加したTable
グループを追加したTable

 上から、テーブルヘッダ、グループヘッダ、詳細、グループフッタ、テーブルフッタです。

 グループを追加すると、Tableグループダイアログが出てきます。ここで、グループのキーとするフィールドを式で指定します。ここでは、CategoryIDフィールドを指定します。

Tableグループダイアログ
Tableグループダイアログ

 Tableにグループヘッダとフッタが追加され、CategoryIDの値によってグループ分けされるようになりました。なお、Tableグループダイアログは、Table全体の設定ダイアログから呼び出すことも可能です。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

バックナンバー

連載:5分でわかるActiveReports帳票

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5