【问题标题】:Change sorting order arrow in SSRS from ascending to descending将 SSRS 中的排序顺序箭头从升序更改为降序
【发布时间】:2019-01-31 13:22:46
【问题描述】:

我对报告中的每一列都进行了交互式排序,但是当我想要排序时(首先单击排序箭头),默认情况下我会得到升序排序。当我单击交互式排序以默认情况下在我的所有列上获得降序时,我该如何更改它。

现在我刚刚在每列上添加了交互式排序,但默认情况下排序是升序。

不知何故,我认为这可以在 rs config 中更改,但我不知道如何。

【问题讨论】:

  • 不,我与该页面上描述的相同。对于每一列,我都有交互式排序(不能选择它是 asc 还是 desc),但是正如您在第 5 步中看到的那样,当我单击箭头时我们有向上和向下箭头时,排序顺序始终默认为 asc。我想改变它,所以在第 5 步之后有第一个选项 desc order 并且当我再次点击 asc order 时
  • 可以按降序生成报告吗?也就是说默认情况下,在点击任何交互式排序之前?如果是这样的话,有一个相当简单的解决方案。
  • 我的 sql 存储过程中已经有按字段 DESC 排序,但我想在第一次单击箭头时默认从报表服务器获取按 DESC 排序

标签: reporting-services ssrs-2012 reportserver


【解决方案1】:

我实际上找到了多种可能有用的解决方案,因此我将继续提交作为答案,希望我的一个建议能够解决您的问题。

正如我在 cmets 中提到的,如果这是您的报告的合适选项,则可以在报告生成时对数据进行排序。为此,请选择要按降序排序的列,右键单击打开“Tablix 属性”,切换到“排序”选项卡,添加要排序的字段,然后将排序顺序切换为“Z-A” ”。这将首先按降序对报告进行排序。

如果您希望在单击交互式排序之前保持报表排序,解决此问题的简单方法是将交互式排序的表达式更改为 =Fields!Month.Value * -1。这将简单地颠倒它的排序顺序,尽管箭头不会改变。另外,我应该注意 - 这仅适用于数字字段。如果尝试使用任何文本字段进行此操作,您将收到错误消息。

我找到了一本关于高级 SSRS 技术的书的片段,它可能有用……也可能没有。看起来 SSRS 报告呈现为 HTML 并生成 onclick 事件。呈现的默认图像称为unsorted.gif 并更改为sortAsc.gifsortDesc.gif。是否可以插入一些可以正确排序的自定义 HTML?我不确定 SSRS 中是否支持包含的标签,但它可能对您的目的有用。

【讨论】:

  • 我已经试过了,甚至在你写到这里之前。但这对我不起作用,这对于对某些列进行排序很有用,但我的任务是将报表服务器交互式箭头更改为排序为 desc
  • @user2171512 似乎这将是一个困难的解决方案,但我已经在我的答案中添加了一些可能有用的额外细节。
  • Steve-o169 这是我想要的,但我不知道在哪里可以找到这个 HTML 代码
  • 这可能有用吗?没有直接解决这个问题,但在我看来,您需要使用自定义代码以您需要的方式实现箭头。我不确定所需的工作量是我能够弄清楚的,但我祝你好运。 stackoverflow.com/questions/19930524/…
【解决方案2】:

右击行组月份,选择组属性,选择排序,点击顺序,选择Z到A。

当报表首次运行时,它将按降序排列,并提供交互式排序。

【讨论】:

  • 这不是我想要改变的。当我单击箭头时,我想将 SSRS 交互式排序箭头更改为默认降序
猜你喜欢
  • 2011-06-20
  • 2016-12-30
  • 1970-01-01
  • 2012-03-01
  • 2018-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多