はじめに
1ページにリストやテキストなどの複数のオブジェクトを配置したレポートで、リストの行数が多く次ページに跨った際、出力が完了しているリストオブジェクトであれば表示が消えてくれるのですが、テキストやシングルトンは2ページ目以降にも表示されてしまいます。
おなじみのCognosのサンプルを使用したレポートで、「製品」ごとに改ページを設定しているレポートで検証していきます。
レポート作成
まずレポートを作成します。
「製品」ごとに改ページを設定したレポートで、その製品の情報を複数のオブジェクトを使って出力するレポートを作成します。
一番上の「製品」のみのリストで、「マスター/詳細を使用した改ページを設定」を設定しています。
これで、製品ごとに改ページされるレポートが作成できました。
ただし、はじめに記載した問題の通り、同じ製品で2ページ目移った際にテキストやシングルトンの値が繰り返し出力されてしまいます。
対応方法
テキストやシングルトンなどの2ページ目以降に表示させたくないオブジェクトに条件付きスタイルを設定します
定義する条件は下記の通りです。
PageNumber () = 1
その他の条件で「ボックスのタイプ」を「なし」を指定します。
改ページのタイミングで、ページ番号を1にリセットしたいので、ページのプロパティから以下の設定を追加します。
ページ付け > ページ番号をリセット : 1
これで、製品が切り替わる改ページタイミングで、ページ番号も1にリセットされ、設定した条件付きスタイルが効いて期待通りのレポート出力が可能になります。
※さっきのレポートで条件付きスタイルを設定したレポートの2ページ目
繰り返し表示されていたテキストなどが消えていることが確認できます。
ページを送り、製品が切り替わったタイミングではページ番号が1に振りなおされて、テキストなどが表示されます。
さいごに
テキストなどのオブジェクトをページ跨った際に表示させてない方法について、他の方法があればコメントいただけると幸いです。