2012-09-19 14 views
11

レコードが選択されていないときに抑制したいかなり簡単なサブレポートがあります。問題は、このサブレポートのヘッダーとフッターセクションに静的要素(テキストボックス、行など)があることです。サブレポート、サブレポート自体、およびサブレポート内のセクションを含むセクションを、レコードがない場合はすべて抑止するように設定しました。しかし、サブレポートはとにかく表示されます。データのないデータセクションは実際には抑制されていますが、ヘッダーとフッターはサブレポートを表示し続けるように見えます。データとヘッダーを含まないサブレポートの表示を無効にする

アイデア?ああ、私はCrystal Reports 2011を実行しています。ありがとう!

答えて

16

私はちょうどCR2008で自分自身に出会った。

  1. 「ファイル」メニューの「レポートオプション」に移動してサブレポートに移動します(これは自分のデザイナーウィンドウで開きます) > 'レコードがない場合は印刷しない'を選択してください。
  2. メインレポートに戻ります。サブレポートを右クリックして、「サブレポートの書式設定」に移動し、「サブレポート」タブをクリックします。「サブレポートを表示しない」チェックボックスをオンにします。
  3. サブレポートがメインレポートセクション内の唯一のものである場合は、セクションエディタのそのセクションに右クリックして[空白セクションを非表示]チェックボックスをオンにします。

EDIT:あなたのサブレポートには、レコードを返しませんが、それは何もは共有変数を使用してみてください、その後を表示されていないだけのことである場合。これを行うには、最初にサブレポートのレコードを表示するために使用しているロジックを考慮する必要があります。これは、詳細セクションの抑制式で見つかったロジックに関係なく、特定のサブレポートの形式に大きく依存します。

ここで、サブレポートのレポートヘッダーで共有numbervarを初期化し、前述のロジックを使用して行が表示されるたびにインクリメントします。

メインレポートに戻ると、その変数の値をチェックして、サブレポートのセクションを条件付きで非表示にすることができます。 CRはサブレポートの変数より前にを評価していない可能性がありますが、抑圧式を見てもそれが渦を起こすので、「may」と言います。セクション抑制式でwhileprintingrecords;キーワードを使用して評価を遅らせることをお勧めします。がんばろう!

+0

Drat!石鹸はありません。 Fileメニューの 'Report Options'ダイアログがわからず、そのボックスがチェックされていなかったので、私は本当にうれしい考えでした。私はそれをチェックし、まだサブレポートを取得しています。 –

+0

@DanBerlyoungサブレポートには実際に何かが表示されるのですか、それとも空のボックスですか?それでもヘッダー/フッターを取得している場合は、サブレポートが実際にレコードを取得している可能性はありますが、表示していないだけですか?サブレポートクエリは、そのチェックボックスが実際に動作するために0行を返す必要があります。 – Ryan

+0

よろしく!そこに擦れ。サブレポートには別のサブレポートに印刷されているレコードがありますが、同じデータセットを使用しているときには値が1つもないフィールドしかありません。したがって、印刷するフィールドがないので、詳細セクションは表示されませんが、サブレポートには実際にレコードがあります。とにかく天気を感知したり、実際に印刷された行がない場合は、その値に基づいてサブレポートを非表示にしますか? –

0

抑制式を試しましたか?

右>フォーマットフィールドをクリックし抑制をチェック>

0

ハードポストのすべてに従うことが、データが相互に動作している場合は、追加編集式[X-2]ボタンをクリックしてくださいセクションにサブレポートを置き、拡大可能かどうかを確認します。

表示する静的データがある場合は、静的データと動的データの2つのサブレポートを作成し、空白の場合は非表示にすることができます。

関連する問題