最近のトラックバック

  • event (夢茶爺&苦茶爺のPC奮戦備忘録)

カウンタ

おすすめ本

AccRanking

« 2017年6月 | メイン | 2017年10月 »

2017年9月

2017年9月27日 (水)

VB.NET:ActiveReports.NET 9.0J で複数のセクションレポートを統合する印刷処理

GrapeCityの「ActiveReports.NET 9.0J」を使っているのですが、 1個の印刷処理内で、どうしても複数のセクションレポートを統合する必要が発生しました。

昔の「ActiveReports」だと空の印刷オブジェクトを作っておいて、 それに各印刷オブジェクトを追加してやる方法が在った様に覚えていたのですが、 ネットで探してもそのような例は見つかりませんでした。

1個のセクションレポートに対して後から発生する他のセクションレポートを 追加していく方法しかネットには載っていませんでしたので、 何とか改良して複合的に行える様にしたのが、以下の例です。

この例の前提として、「rptEven」「rptOdd」というセクションレポートの クラスが作成済みであることとします。

最初に印刷オブジェクトを統合するセクションレポートオブジェクトとして「rptMain」を 宣言します。
その後、10回のループで偶数と奇数の回数の時にそれぞれ「rptEven」「rptOdd」 のオブジェクトを生成して、「rptMain」の印刷オブジェクトに追加しています。

偶数回と奇数回での処理で、「rptMain」が「Nothing」であるかを確認し、 初回の処理を行っています。
実際には奇数回の「rptMain」が「Nothing」であるかの確認は必要はありませんが、 ループ処理において、どちらが先に来てもいいように考えました。

もっと簡単な方法があるかもしれませんが、何かの参考になればと思います。

ゼロから分かるActiveReports帳票開発入門 (CodeZine BOOKS)

楽天市場

デル株式会社