0

我在 tablix 中有一个 tablix 和分层分组。

例如:

Gender------%count       
Female------ 10  
Male -------  0

我的查询返回所有女性记录,因为没有男性记录,它没有返回男性。

在报告中,我想将 Male 显示为 0,但我无法... 我该如何解决这个问题?

4

1 回答 1

1

在这种情况下通常有两种选择。

报告级别

您可以创建一个包含三个表标题行的表,而不是动态组标题行或详细信息行 - 一个用于列标题,一个用于MaleFemale

然后,您可以使用适当的条件表达式填充行值,例如,对于Male行总计,使用如下内容:

=Sum(IIf(Fields!Gender.Value = "Male", 1, 0)

即使数据集中没有值,这也会给你0而不是。NothingMale

数据库级别

另一种选择是将数据集更改为始终为每个性别返回一个聚合行,即,如果您从 T-SQL 查询中获取数据,您将使用以下内容:

select * from
(
  select Gender = 'Male'
  union
  select Gender = 'Female'
) Gender

作为基表(通常你不会有一个Gender表,因此上面的查询)并将LEFT JOIN它用于所有必需的值数据,即即使不存在值也总是返回每个性别行。这样,您仍然可以正常分组/详细信息行来显示数据。

于 2013-09-25T19:31:31.450 回答