Crystal Reports で重複したデータを非表示にする方法
↓データ
項目A 項目B 項目C 項目D __________________________ AAAA BBBB 0000 1000 AAAA BBBB 1111 1000 AAAA BBBB 2222 1000 AAAA CCCC 0000 1000 AAAA CCCC 1111 1000
↓このようにブレイクしたときにのみ表示したい場合
項目A 項目B 項目C 項目D __________________________ AAAA BBBB 0000 1000 1111 1000 2222 1000 CCCC 0000 1000 1111 1000
フィールドのプロパティの「重複したデータを非表示」チェックをつけたら上手くいくと思いきや。。。
項目A 項目B 項目C 項目D __________________________ AAAA BBBB 0000 1000 1111 1000 2222 1000 AAAA CCCC 0000 1000 ←項目Aが表示されちゃう 1111 1000
ということで「重複したデータを非表示」ではなく「非表示」での式に以下のスクリプトを記述
OnFirstRecord() = false AND {テーブル.項目A}=Previous({テーブル.項目A})
(先頭レコードではない場合 AND 前のレコードと同じだったら表示しない )
ただし、改ページが行われた際に非表示になるので改良が必要(OnFirstRecordはページの先頭かを判断するのではないので)
動作確認環境:Crystal Reports XI R2