【问题标题】:Grouping a row of months by year SSRS按年分组连续月份SSRS
【发布时间】:2016-05-12 14:42:09
【问题描述】:

我的报告显示每个月的 price_totals,每个月都会填充行标题: 如您所见,月份不按顺序排列(也不一定需要如此。这是为我们的财政年度设计的)。请注意,在 5 月之后,它会跳到 10 月。 10 月 - 12 月是 2015 年的月份,然后 2016 年的月份是从 1 月到 5 月。

为了“解决”这个问题,我只是在月份行上方添加了一个“年”行: 我不是这个样子的超级粉丝。我可以将 2015 年的月份和 2016 年的月份组合在一起,以便每年只显示一次,而不是每个月都显示年份吗?

如果你好奇,这是我的 tablix 设计:

【问题讨论】:

  • 您确定按 [Month] 按此表达式排序吗?
  • 是的,它是按月排序的。
  • 您可以使用 Matrix 而不是 Tablix 更轻松地做您想做的事情。然后,您可以只是默认情况下矩阵附带的列组的父组。
  • 按升序排列年份。

标签: sql tsql reporting-services ssrs-2008


【解决方案1】:

使用 SSRS,您可以按未显示的字段进行排序。在生成月份列的列组中,将排序依据设置为:

=Fields!Year.Value & "-" & RIGHT("0" & Fields!Month_Number.Value,2)

请注意,此函数将生成一个如下所示的年月字符串,并有助于正确排序。

2015-01
2015-02
2015-03
2015-04
2015-05
2015-06
2015-07
2015-08
2015-09
2015-10
2015-11
2015-12

【讨论】:

    【解决方案2】:

    =Switch(Fields!NameOfMonth.Value="January",1,Fields!NameOfMonth.Value="February",2,Fields!NameOfMonth.Value="March",3,Fields!NameOfMonth.Value="April ",4,Fields!NameOfMonth.Value="May",5,Fields!NameOfMonth.Value="June",6,Fields!NameOfMonth.Value="July",7,Fields!NameOfMonth.Value="August", 8,Fields!NameOfMonth.Value="September",9,Fields!NameOfMonth.Value="October",10,Fields!NameOfMonth.Value="November",11,Fields!NameOfMonth.Value="December",12)

    您可以使用上面的表达式进行日期部分和排序 Month Sorting

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-05
      • 1970-01-01
      • 2020-12-29
      • 1970-01-01
      • 2019-06-11
      相关资源
      最近更新 更多