按特定列名矩阵在 SSRS 中排序

时间:2021-05-06 15:08:54

标签: reporting-services ssrs-2008 ssrs-2012

我有多个表,sql 中有一些行和列。 列就像 true,我在 sql 中做了逆透视表。

并在 ssrs 中获得数据集,例如:(Key, column1,column2,column3)

我通过设置 TableName, Key,ColumnName,ColumnValue 为每个表创建了如下结构的多个矩阵:

filter = "TableName"

问题:我如何根据 SSRS 矩阵中的列进行排序(排序依据)。正如我所说,我有多个矩阵。我想按 Column1 排序的第一个矩阵,按 Column2 排序的第二个矩阵,按 Column2 和 Column3 排序的第三个矩阵 我需要提及按特定列名排序的地方?

到目前为止,我已经尝试对我的第一个 Matrix 进行排序.. 尝试使用 ---------------------- Key | [ColumnName] ---------------------- [Key] | [ColumnValue] ------------------------ 但它没有用。我也试过 "Row Group Properties ----> Sorting ---> Expression : SUM(IIF(ColumnName="Column1",ColumnValue,0)), 而不是 COUNT。到目前为止没有运气。

1 个答案:

答案 0 :(得分:1)

我是这样解决的... 因此,如果我们想要“按 Column1 排序”,那么在 unpivot 之后将您的数据集放入矩阵中。转到要按特定列排序的矩阵(在我的情况下为 column1)行组属性---->排序----> 添加---> 表达式:

MAX( 
IIF(Fields!ColumnName.Value="Column1",Fields!ColumnValue.Value,Nothing) 
)

并且如果您想将 Column2 也添加到该矩阵进行排序,则在设置第一个表达式后点击“确定”并在同一窗口中单击 --->add---> 表达式----> 相同的查询但使用您的列名(例如 Column2)。

希望这对某人有所帮助。