GrapeCity.devlog

グレープシティ株式会社のDeveloper Tools〈開発支援ツール〉の最新情報をお届けします。製品のTIPSや発売情報、イベントのお知らせなどをいち早く発信中です。

セクションをまたぐ一覧表を含む帳票を効率よく作成するには?

購入明細や商品一覧など、一覧形式の表を含む帳票を作成するというのは非常によくあることだと思います。

f:id:GrapeCity_dev:20180511132431p:plain:w600

ActiveReports for .NETが販売当初より提供しているレポート形式であるセクションレポートで一覧表を作成する場合、ページヘッダ/フッタやグループヘッダ/フッタなど、詳細セクション以外のセクションを活用してデザインすることは多々あると思います。

このとき、セクションをまたいで配置できるコントロール「クロスセクションボックスとクロスセクションライン」を使用することで一覧表の罫線を簡単に表現することができます。

f:id:GrapeCity_dev:20180509163524p:plain:w500

今回はこれらの使い方を、最新バージョン「12.0J」で追加された新機能とともにあらためてご紹介したいと思います。

基本的な使い方

受注コードでグルーピングした受注明細表の作成にクロスセクションボックスとクロスセクションラインを使ってみます。レポートにグループヘッダ/フッタを追加したら、ツールボックスからCrossSectionBoxをグループヘッダ、またはフッタにドロップします。

すると以下のようにセクションをまたいだボックスを配置することができます。このコントロールに罫線(LineStyleプロパティ)を設定することで、表の外枠の罫線として使用できます。

f:id:GrapeCity_dev:20180509164639p:plain:w700

同じことをLineコントロールだけでやろうとすると、合計8個のLineコントロールが必要になります。また、きれいに切れ目のない表にするために各コントロールの位置をきっちり調整しないといけないなど煩わしさもあります。

f:id:GrapeCity_dev:20180511095722p:plain:w700

クロスセクションボックスならこれを1つのコントロールで表現できるので、もちろんセクション間の切れ目など気にする必要はなく、表の枠線が簡単に表現できます。

同様にセクションをまたいで直線を出力できるクロスセクションラインも使用してみます。ツールボックスからCrossSectionLineを必要な数ドロップし、これらを表の内側の縦の罫線としてレイアウトを作成します。完成するとこんな感じです。

f:id:GrapeCity_dev:20180509164939p:plain:w700

わかりやすく線の色を変えてみます。下の青くハイライトした部分がクロスセクションボックスで

f:id:GrapeCity_dev:20180511105305p:plain:w700

こちらがクロスセクションライン。Lineコントロールだけだと12個必要になるところが4個で済んでいます。 f:id:GrapeCity_dev:20180511105325p:plain:w700

線の色を戻してプレビューするとこのような感じで明細表が作成できました。

f:id:GrapeCity_dev:20180509170021p:plain:w700

うまくデザインできないこともある

この便利なクロスセクションボックスですが、これまではレイアウトによっては思うようにデザインできないこともありました。

例えば先ほどの明細表で改ページが発生した場合を見てみます。パッと見はわからないですが、よく見ると表の外枠の罫線の下側だけ太さが異なります。これまではクロスセクションボックスを配置した帳票において改ページが発生した場合、改ページ部分の罫線を出力することができず、そのボックスの罫線を閉じることができませんでした。

f:id:GrapeCity_dev:20180509170925p:plain:w700

もっとわかりやすく、明細内側の横の罫線がない場合のレイアウトで試してみます。この場合は表の下側が完全に開いた状態になってしまいます。 最終行の罫線だけ太くするなどして回避もできますが、コードを書いて独自の処理を実装しなくてはいけないので面倒です。

f:id:GrapeCity_dev:20180509171546p:plain:w700

罫線を閉じればサクッと解決

この問題を解決するためのCloseBorderプロパティが12.0Jで追加されています。使い方は簡単です。プロパティグリッドからCloseBorderプロパティをTrueに設定するか、スマートダイアログから「改ページの時に罫線で閉じる」にチェックをいれます。

f:id:GrapeCity_dev:20180509172916p:plain

実行してみると以下のように改ページ部分の罫線もバッチリ出力されました!

f:id:GrapeCity_dev:20180509173044p:plain:w700

いかがでしたでしょうか。12.0Jではこの他にも多数の新機能が追加されております。製品Webサイトではトライアル版のほか、デモアプリケーションも公開しておりますので、是非一度お試しいただければと思います。

ActiveReports for .NET 12.0J - 製品情報
Windowsアプリケーションデモ
Webアプリケーションデモ

Copyright © GrapeCity, Inc. All Rights Reserved.