レコードが選択されていない場合に非表示にするかなり単純なサブレポートがあります。問題は、このサブレポートのヘッダーセクションとフッターセクションに静的要素(テキストボックス、行など)が含まれていることです。レコードがない場合、サブレポートを含むセクション、サブレポート自体、およびサブレポート内のセクションがすべて抑制されるように設定しました。それでも、サブレポートはとにかく表示されます。データのないデータセクションは実際には抑制されていますが、ヘッダーとフッターはサブレポートを表示したままにしています。
何か案は?ああ、私はCrystal-Reports 2011を実行しています。ありがとうございます。
私はCR2008でこれに遭遇しました。これを機能させるために行った手順は次のとおりです。
編集:サブレポートがレコードを返しても、どれもdisplayedでない場合は、共有変数を使用してみてください。これを行うには、最初にサブレポートのレコードを表示するために使用しているロジックを考慮する必要があります。これは、詳細セクションの抑制式にあるロジックと同じですが、特定のサブレポートの形式に大きく依存します。
次に、サブレポートのレポートヘッダーで共有numbervarを初期化し、前述のロジックを使用して行が表示されるたびにインクリメントします。
メインレポートに戻って、その変数の値をチェックして、条件付きでサブレポートのセクションを非表示にすることができます。 CRがサブレポートの変数priorを抑制式を確認するために評価しない可能性があるため、「可能性があります」と言いますが、それを試してみてください。評価を遅らせるには、セクション抑制式でwhileprintingrecords;
キーワードを使用する必要があります。幸運を!
投稿のすべてをフォローするのは難しいですが、データが相互に実行されている場合は、セクションを追加し、セクションにサブレポートを配置して、「拡大できる」がチェックされていることを確認してください。
表示する静的データがある場合は、2つのサブレポートを作成します。1つは静的データを使用し、もう1つは動的データを使用して、空白の場合は非表示にします。
抑制式を使用してみましたか?
右クリック書式フィールド>チェック抑制>数式の編集[x-2]ボタンをクリック