2

我需要下面这个查询的 Crystal Reports 语法。基本上,如果所有记录都不适用,我想取消详细信息部分。感谢您对此的帮助。

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

1 回答 1

1

这会很棘手,因为只有在记录已经打印后才能评估汇总和运行总计。因此,如果 SQL 表达式是不可能的,我能想到的最简单的方法仍然会有点复杂:

  1. is_applicable在最深处添加一个新组。(就在详细信息部分旁边。)禁止页眉/页脚并按降序排序。
  2. is_applicable在“详细信息”部分中,创建一个共享布尔变量,每次打印到等于 1时,它都会翻转为 True。每次第二个最深的组更改时,将变量重置回 False。
  3. 在详细信息抑制部分中,编写逻辑以抑制共享布尔值是否为真且is_applicable等于零。

正确完成,这应该首先打印任何适用的条目,如果没有找到,不适用的条目将不会显示。

于 2016-08-30T15:40:04.370 回答