ssrs汇总两个字段相同的数据集,不同的tablix

时间:2016-05-03 03:45:26

标签: reporting-services

我试图从两个不同的Tablix中总结两个相同的字段。 两个Tablix都可以过滤不同的建筑物名称。 " MYDATA"是我的数据集的名称。

=Sum(Fields!TotalFloorArea.Value,"Mydata") +Sum(Fields!TotalFloorArea.Value, "Mydata")

如何引用不同的Tablix?

非常感谢提前。

3 个答案:

答案 0 :(得分:1)

实现这一目标的方法不止一种。一种方法是使用IIf()作为每个SUM()来电的一部分。使用IIf()条件,您将重复用于过滤两个Tablix控件的条件。

尝试这样的事情:

=Sum(IIf(Fields!BuildingName.Value = "BLDG-A", 
         Fields!TotalFloorArea.Value, 
         0), "Mydata") +
 Sum(IIf( Fields!BuildingName.Value = "BLDG-B", 
         Fields!TotalFloorArea.Value, 
         0), "Mydata")

我更喜欢使用报告变量。定义几个报表变量totalBuildingAtotalBuidlingB,并使用上面的表达式表示各个变量的表达式:

totalBuildingA

=Sum(IIf(Fields!BuildingName.Value = "BLDG-A", 
         Fields!TotalFloorArea.Value, 
         0), "Mydata")

totalBuildingB

=Sum(IIf(Fields!BuildingName.Value = "BLDG-B", 
         Fields!TotalFloorArea.Value, 
         0), "Mydata")

然后,您可以将两个报表变量一起添加到第一个示例中,以获得等效结果(但使用的代码更灵活,可以将两个或更多其他建筑名称的SUM组合在一起等):

=Variables!totalBuildingA.Value + Variables!totalBuildingB.Value 

答案 1 :(得分:0)

我现在就开始工作了。我在下面的组外添加了一行,然后将Totals添加到Rows中。然后,对于总计,我引用了文本框,例如Reportitems!Textbox22 + Reportitems!Textbox23。

我不确定这是否合理。但现在正在工作!只是想弄清楚最终的公式。

答案 2 :(得分:0)

参考文本框可能会变得混乱。并且没有直接的方法来引用其他组或表中的总和。适用于此的一个好选择是将计算字段添加到数据集中。您可以拥有1个建筑物的价值,另外25个建筑物可以拥有另一个。表达式看起来像这样:

    =IIf(Fields!BuildingName.Value = "BLDG-A", Fields!TotalFloorArea.Value, Nothing)

这样,您可以从报告中的任何位置对这些计算字段求和。您不需要在Sum函数中指定范围,让它使用单元格的当前范围,如下所示:

    =Sum(Fields!BldgA_TotalFloorArea.Value)