如何在行RDLC报告中获得所需的输出

时间:2013-08-05 13:31:45

标签: reporting rdlc

我在下面有以下报告,我可以获得所有行

SERVER NAME COUNT1   COUNT2     Count+% 7days  count+% 30days
All Servers
( Server1,
 Server2,
Server 3)   7   1,501     500 (20%)     850 (53.3%)

Server 1    2   705       200 (28.3%)   350 (49.6%)

Server 2    3   396       100 (25.2%)   200 (50.5%)

Server 3    2   400       200 (50%)         300 (75%)

我已经完成了最后三行,但如何获得最上一行?我们如何总结所有行。在上面的行中?

其他是简单的countDistint和count,

对于Count +%学生:

=Sum(IIf(Fields!Logged7Days.Value = "no", 1, 0)) &" ( "& FormatNumber((Sum(IIf(Fields!Logged7Days.Value = "no", 1, 0)) *100) / count(Fields!f_IdPupil.Value),2) & "%) "

只需将列更改为30天,对于下一个,基本上他们会告诉学生是否在7天,30天内出现。

示例数据:

enter image description here

谢谢

1 个答案:

答案 0 :(得分:3)

您可以在任何表/组标题行中使用您的表达式;它只会应用于当前范围,例如在组头中,聚合将应用于组中的所有行,而在表头中,它将应用于数据集中的所有行。

说我有以下数据:

enter image description here

我基于此创建了一个简单的报告:

enter image description here

您可以看到有两个表标题行,一个带标题,一个带数据,一个组标题行 - 该组基于ServerName

对于 7天表达式列,表标题行和组标题行中的字段具有完全相同的表达式:

=Sum(IIf(Fields!Logged7Days.Value = "no", 1, 0))
    & " ( "
    & FormatNumber((Sum(IIf(Fields!Logged7Days.Value = "no", 1, 0)) * 100)
  / count(Fields!f_IdPupil.Value),2) & "%) "

这只是你完全相同的表达式,带有一些小的格式。类似的表达式应用于 30天表达式列:

=Sum(IIf(Fields!Logged30Days.Value = "no", 1, 0))
    & " ( "
    & FormatNumber((Sum(IIf(Fields!Logged30Days.Value = "no", 1, 0)) * 100)
  / count(Fields!f_IdPupil.Value),2) & "%) "

您可以在小组和总计级别看到结果符合预期:

enter image description here

所有这些都表明您只需要在不同的范围内应用相同的表达式来获得结果。如果这对你不合适;请根据我的数据集告诉我您期望的结果。