SSRS矩阵 - 按特定列

时间:2016-09-03 08:35:32

标签: sorting matrix reporting-services pivot

有人可以解释我如何通过Count(SearchDate)为这个矩阵中的特定“出发”正确排序“[Arrivals] group”吗?

enter image description here

我在Row Group Sorting Properities中尝试了这个fx,但它没有用。

[Count(SearchDate)]

然后我尝试指定我想要排序的列,但同样的问题。

=Count(IIF(Fields!Departures.Value = "PRG", 1, 0))

经过深入检查后,我发现我只能通过[Count(SearchDate)]对“[Arrivals] group”进行排序,但没有针对特定的“Departure”进行分组。

enter image description here

在MSDN论坛上提出建议之后我尝试了这个fx:

=IIF(Fields!Departures.Value = "PRG", Count(Fields!SearchDate.Value), 0)

在第一个视图中,结果看起来不错,但仅适用于前几个记录。

当我在SQL服务器中尝试数据透视表时,一切看起来都很好:

SELECT * FROM (SELECT Arrivals, Departures, SearchDate FROM Destination WHERE SearchDate > '2016-03-01T00:00:00' AND SearchDate < '2016-03-28T14:03:46') as a
PIVOT (COUNT(SearchDate) for Departures in (PRG, LON)) as PivotTable
Order by PRG Desc

我花了很多时间尝试了很多解决方案,但我真的不知道如何解决它。

非常感谢你的帮助,彼得。

1 个答案:

答案 0 :(得分:0)

我之前遇到过同样的问题。尝试使用此表达式:

=COUNT(
  IIF(
    Fields!Departures.Value="PRG",
    COUNT(Fields!SearchDate.Value),
    Nothing
  )
 )

这可能会很痛苦,因为根据数据集的行数会增加报表处理时间导致性能不佳,但它可以正常工作。

如果有帮助,请告诉我。