2016-08-30 10 views
2

以下のクエリでは、Crystal Reportsの構文が必要です。基本的には、すべてのレコードが適用されない場合は、詳細セクションを表示しないようにします。これについてあなたの助けを感謝します。件数に基づくセクション抑制のためのクリスタル構文

if (select count(*) from appendix where is_applicable=0) = (select count(*) from appendix) 
+2

クエリでSQL式を作成し、必要に応じて数式で使用できます。 – Furtiro

+0

はい、is_applicableはyes/noフィールドです – dizzychick

+0

付録には複数のサブセクションが表示されます。それらのすべてが適用できない場合は、セクション全体を抑制する必要があります。ただし、1つ以上が該当する場合は、すべて表示する必要があります。 – dizzychick

答えて

1

要約と実行合計は、レコードが既に印刷された後にのみ評価できるため、これは難しいでしょう。 SQL式は問題外であれば、私は考えることができる最も簡単な方法は、まだ少し複雑になります:

  1. 最も深いレベルでis_applicableのために新しいグループを追加します。 (詳細セクションのすぐ隣にあります)ヘッダー/フッターを非表示にし、降順でソートします。
  2. 詳細セクションで、is_applicableの横に印刷されるたびにTrueに反転する共有ブール変数を作成します.2番目に深いグループが変更されるたびに、変数をFalseに戻します。
  3. [詳細抑制]セクションで、共有ブール値がTrueでis_applicableがゼロに等しい場合に抑制するロジックを記述します。

は、これが最初のいずれかの該当項目を印刷する必要があり、正常に完了し、何も見つからなかった場合は、適用できないエントリ表示はしません。

関連する問題