1

我有以下问题: -- 我有一个具有以下结构的数据库表:< Age, Gender , Wage., ..> -- 我有一个带有两个子报表的 Crystal Reports 报表,每个子报表都显示每个年龄的工资图表,一个用于具有男性性别的记录,另一个用于女性性别。如果表中没有性别值为“男性”或“女性”的记录,我想取消一个子报表。谢谢, 瓦利

4

1 回答 1

0

创建SQL 表达式,计算性别列中男性和女性值的出现次数。例如:

(select count(male) from dbtable where gender = 'male')

然后简单地通过抑制公式抑制您想要的子报表{%SQL_expression} = 0

关于 SQL 表达式的一个很好的介绍在这里:https ://www.box.com/shared/i2jk8yohku

或者,您可以使用公式读取字段,同时使用WhileReadingRecords和共享的 BooleanVar 从数据库中读取字段。

WhileReadingRecords;
Shared BooleanVar isMale;
isMale := False;
if (dbTable.Gender = 'male') then
  isMale := True;
isMale;

然后使用共享的 BooleanVar 来抑制 sbreport。

于 2012-07-29T21:11:44.937 回答