通过测试其他列值中的值条件来填充SSRS报告中的单元格

时间:2018-11-13 15:46:09

标签: reporting-services

通过测试其他列值中的值条件来填充SSRS报告中的单元格

我的数据集中有3列(类别,月份,金额),其值类似于以下内容:

Category   Month   Amount
A          Jan       20
A          Feb       25
A          Mar       10
R          Jan       15
R          Feb       50
R          Mar       55

在报告上,我需要:

    Jan   Feb   Mar
A   20    25    10
R   15    50    55

我尝试将此表达式放置在每个组行列中,例如,在“ Feb”列中将是:

=IIF(Fields!Category.Value = "A" and Fields!Month.Value = "Feb", Fields!Amount.Value, 13)

使用不会短路的IIF不能正确评估条件。 “ Month”值是一个字符串,它将始终显示条件的第一行,在这种情况下,它将显示值20,而不是25。如果将“ Month”值更改为int,则显示false(13 ); 如何使用IIF或其他方式正确填充单元格?

对此深表谢意。

1 个答案:

答案 0 :(得分:3)

您不需要这样做。

只需使用矩阵而不是表格即可。

将矩阵添加到报告中,您将看到三个占位符名称(从内存中),例如行,列和数据。将类别字段拖到行单元格,将月份字段拖到列单元格,将金额字段拖到数据单元格。就这样....

您将遇到的唯一问题是,默认情况下,列将按字母顺序排序。最好在数据集中也有月号,以便您可以按此排序。您可以通过在主报表设计区域下方的行/列组面板中右键单击列组名称来设置列顺序。