有没有办法垂直合并单元格,以便可以在列中显示行组的总计?以下是我希望报告显示的方式:
+-------+--------+--------+---------+--------------+--------------+
|Year | Half | Qty | Amount | Year Ttl Qty | Year Ttl Amt |
+-------+--------+--------+---------+--------------+--------------+
| | 1st | 500 | 2,000 | | |
| 2012 +--------+--------+---------+ 1,200 + 5,500 +
| | 2nd | 700 | 3,500 | | |
+-------+--------+--------+---------+--------------+--------------+
到目前为止,我所做的是在行组中创建一年和一半的表。一半是Row Group中的一个孩子。我在Amount - Year Ttl Qty和Year Ttl Amount之后又增加了两列。这些都是计算列。我在"年"上使用了一个总和。计算年份Ttl数量:
=Sum(Fields!Qty.Value, "Year")
这让我得到了正确的价值,但它重复了第一和第二半的行。所以我继续将Hide Duplicate参数设置为" Year"在第2行显示空白的行组。如下所示:
+-------+--------+--------+---------+--------------+--------------+
|Year | Half | Qty | Amount | Year Ttl Qty | Year Ttl Amt |
+-------+--------+--------+---------+--------------+--------------+
| | 1st | 500 | 2,000 | 1,200 | 5,500 |
| 2012 +--------+--------+---------+--------------+--------------+
| | 2nd | 700 | 3,500 | | |
+-------+--------+--------+---------+--------------+--------------+
然而,这仍然没有得到我想要的输出。
我在SSRS - show row total in column看过非常相似的帖子。但是,那里的答案并没有真正帮助我。
编辑(12thOct' 14)
我最接近解决方案的是:
在第二个网格中,我使用表达式绘制顶部和底部边框,以给出合并单元格的印象。对于Year Ttl Qty单元格的边界,我使用了以下表达式:
Top:
=iif(Previous(Fields!Year.Value) =Fields!Year.Value, "None", "Solid")
Bottom:
=iif(Count(Fields!Qty.Value,"DataSet1") = RowNumber("DataSet1"), "Solid","None")
+-------+--------+--------+---------+--------------+--------------+
|Year | Half | Qty | Amount | Year Ttl Qty | Year Ttl Amt |
+-------+--------+--------+---------+--------------+--------------+
| | 1st | 500 | 2,000 | 1,200 | 5,500 |
| 2012 +--------+--------+---------+ + +
| | 2nd | 700 | 3,500 | | |
+-------+--------+--------+---------+--------------+--------------+
不幸的是,在我看来,这仍然是一个黑客攻击:(例如,在这个方案中,我无法将年份Ttl数量垂直居中于2个单元格。
答案 0 :(得分:0)
有几种方法可以达到你想要的效果。您可以将年份ttl Qty和Yeat Ttl Amt对齐并移除底部单元格填充以使值尽可能至少接近但是你感觉不错#34; hacky"。
下面详细介绍了一个更好的选项,让您不必先考虑总计数量,但如果您必须将总数保持在最后,那么您可以通过将表格嵌套在彼此中来获得类似的结果。
假设您的数据是这样的:
然后设置一个包含Year和Half的行组的表格,如下所示:
你的结果将是这样的: