セクションレポートでページの最終セクションを罫線で閉じる方法は?【※サンプル有り】
対象製品
ActiveReports for .NET 7.0J
詳細
セクションレポートの場合、ページヘッダ上にCrossSectionBoxコントロールを配置することで、ページヘッダからページフッタまでをまたいだ状態で枠線を描画することが可能です。
ただし、ページヘッダ/フッタは、出力するデータにかかわらず、ページ上の固定の位置に描画されるため、ページ上に出力されるデータが少なくても、枠線は同じように描画されます。(下図参照)
固定の位置ではなく、ページ上の最終セクションの直後に横線を引く方法としては、ページフッタにCrossSectionBoxコントロールまたは Lineコントロールを配置し、各セクションの高さ合計からページの最終セクションの描画位置を判断し、それにあわせてページフッタの高さを動的に調整する方法が考えられます。
具体的な実装方法については、こちらのサンプルをご覧ください。
なお、この方法はレポートの構成やイベントの発生順序などに依存するため、レポートのレイアウトや改ページの条件などによってはこの方法が適用できない場合があります。
※イベントの発生順序に関する詳細な情報は、製品ヘルプの下記のトピックをご覧ください。
PowerTools ActiveReports for .NET 7.0J
- ActiveReportsユーザーガイド
- 概念
- セクションレポートの概念
- セクションレポートのイベント
- 集計コントロールによるイベント発生順の変化
- 改ページによるイベント発生順の変化
- よくある質問
- セクションレポート
- イベント
この方法を適用できない場合には、Detailセクションの下端にLineコントロールを配置するなど、別のレイアウトで想定している出力結果を実現できないか、ご検討ください。
ただし、ページヘッダ/フッタは、出力するデータにかかわらず、ページ上の固定の位置に描画されるため、ページ上に出力されるデータが少なくても、枠線は同じように描画されます。(下図参照)
固定の位置ではなく、ページ上の最終セクションの直後に横線を引く方法としては、ページフッタにCrossSectionBoxコントロールまたは Lineコントロールを配置し、各セクションの高さ合計からページの最終セクションの描画位置を判断し、それにあわせてページフッタの高さを動的に調整する方法が考えられます。
具体的な実装方法については、こちらのサンプルをご覧ください。
なお、この方法はレポートの構成やイベントの発生順序などに依存するため、レポートのレイアウトや改ページの条件などによってはこの方法が適用できない場合があります。
※イベントの発生順序に関する詳細な情報は、製品ヘルプの下記のトピックをご覧ください。
PowerTools ActiveReports for .NET 7.0J
- ActiveReportsユーザーガイド
- 概念
- セクションレポートの概念
- セクションレポートのイベント
- 集計コントロールによるイベント発生順の変化
- 改ページによるイベント発生順の変化
- よくある質問
- セクションレポート
- イベント
この方法を適用できない場合には、Detailセクションの下端にLineコントロールを配置するなど、別のレイアウトで想定している出力結果を実現できないか、ご検討ください。
関連情報
キーワード
HowTo デザイン・レイアウト サンプル有り