【问题标题】:Why does my SQL Server Reporting Service (SSRS) Report 'appear' to re-sort the data?为什么我的 SQL Server 报告服务 (SSRS) 报告“似乎”重新排序数据?
【发布时间】:2015-12-28 13:52:25
【问题描述】:

所讨论的 SSRS 报告是一个客户端报告文件 (.rdlc),由以下各项创建: 1) 查询数据库并将返回的填充 System.Data.DataTable 对象应用于报告; 2) 在报表对象上调用 Export 方法以创建最终的 PDF 文件。

问题:查询以一种方式对数据进行排序,而报表以另一种方式对数据进行排序!

我知道 SSRS 报告不支持排序,因为这取决于 查询,因此我感到困惑!

我使用调试中断来查看正确排序的 DataTable 变成了错误排序的 PDF。 (呜呜呜)

报告仅列出产品、库存数量和类别,例如红葡萄酒、白葡萄酒等

...有趣的是,PDF 根据数据的第一个字母数字列(即称为“类别”的第三个物理列)按字母顺序排序。

我正在使用 C#.NET 4 和 Visual Studio 2010。

【问题讨论】:

    标签: sorting rdlc reporting-services


    【解决方案1】:

    您的问题是您认为“SSRS 报告不支持排序” - 根本不正确。您可以对报告中的数据进行排序。这是通过 Table 的属性完成的,而不是像人们想象的那样使用 Dataset 属性。

    单击表格上的任意位置,右键单击左上角的框并选择“属性”。这将显示整个表格的属性,其中第四个选项卡是“排序”。您应该会发现此部分已为您的报告填写。

    如果未填写此部分,则输出将按数据集查询结果的顺序排列。但是,可以使用表属性覆盖它,以便一个查询可以支持具有不同排序和分组的不同报表。

    【讨论】:

    • 谢谢 Chris - 你的措辞很好!我发现 Tablix 确实在分类,我在几个月前就设定了标准,然后忘记了。有一个词适合像我这样的人——但不适合这里。非常感谢您的拍拍:)
    • 很高兴你把它整理好了。我也经常发现六个月前在代码中做了一些奇怪事情的人是我 :) 请勾选答案上的复选框,以便稍后提出这个问题的人知道答案是正确的。
    【解决方案2】:

    顺便说一句..万一其他人来到这里,这不是解决方案..我在 VS 中使用报表设计器(不是 SSRS ..但看起来非常相似),还可以选择在其中进行排序你的小组。 IE。在行组窗口(或列组)..右键单击组,然后选择“组属性” 那里还有一个“排序”部分,这可能会改变您的预期结果..

    另外,我想知道是否对数据集查询进行了排序。但随后指定了一个组,那么顺序可能会因为分组而改变?我还没有测试过 - 但只是想知道..因为该组实际上可能会聚合数据集中的排序值...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-08
      • 1970-01-01
      • 2011-03-10
      • 2011-10-03
      相关资源
      最近更新 更多