【问题标题】:Crystal report Cross-Tab order by another column水晶报表交叉表按另一列排序
【发布时间】:2017-11-25 00:18:25
【问题描述】:

我在水晶报表中做了一个交叉表,如下所示:

但是,如您所见,顺序很奇怪(即正确的顺序应该如下所示:)

并且排序存储在另一个名为 order 的字段中,我查看了水晶报表的交叉表专家排序选项,它不允许我按另一列排序,它只允许我排序升序或降序,如何设置另一列的排序?

【问题讨论】:

    标签: crystal-reports


    【解决方案1】:

    Crosstab's 排序是基于行顺序的,如果你想在你的 on 中对其进行排序,你必须添加一些额外的行并且必须在 @987654326 的 Customize Style 中添加 suppress subtotalLabel @


    示例: 如果您有 3 行(A,B,C)display 并且您必须像 B,C,A 那样对其进行排序,那么您必须 添加 2 新行(B,C) 现在你的Crosstab 看起来像(B,C,A,B,C) 现在你必须抑制 Rows B and C 你满足你的两个要求为sorting and display order


    但是这个solution 有一些限制,比如 如果您想在 Excel 中导出报告,那么它将总共添加 额外的单元格。 否则你就开始了


    示例: 如果您有 3 行(A、B、C)要显示并且您添加了一行并抑制它以解决您的排序问题,那么在 Excel 中,它的总数看起来像

    A            B            C
    a            1            3    
    b            2            2
    ---------------------------
    Total:                    3            5

    【讨论】:

    • 虽然这个问题有点老了……我记得我是用这个方法解决这个问题的:)
    • 对于提到的 excel 导出问题,你有什么解决方案吗,因为很多人问我这个问题,我总是空白。
    • 目前我将获取数据集并创建一个用于导出到 excel 的函数
    【解决方案2】:

    是的,您不能对另一列进行排序。您必须使用任何一列作为标题。

    在 Crystal 报表中,根据标题列的值进行排序(这就是您按字母顺序查看的原因)。

    我也面临这个问题以及我是如何解决的,我正在解释。您必须使用有顺序的公式,但要么隐藏它,要么使用此链接中的值。

    https://scn.sap.com/thread/3341846

    根据此链接的第二个选项。 (我想你先检查一下)

    http://www.codeproject.com/Tips/493334/Custom-sorting-for-Crystal-Report-Cross-Tab

    https://scn.sap.com/thread/1172741

    【讨论】:

    • 我之前看过这篇文章,但我不能使用那个公式,因为列是从数据库存储和生成的,用户可能会添加或删除或重新排序列,所以排序存储在数据库中..
    • 是的,但是您必须按照 codeproject 链接中的说明更改水晶报告中的顺序,这就是我推荐的链接
    【解决方案3】:

    打开crosstab expert,突出显示要重新排序的列,转到Group Options 并选择in specified order。这将打开另一个选项卡,您将在其中列出可用的值。使用右侧的箭头,您可以向上或向下移动您的值,并按照您希望它们显示的顺序调整它们。

    【讨论】:

    • 我看过了,但问题是,订单存储在数据库中,所以我不能硬编码订单,我必须通过另一个名为 order 的列进行排序...
    【解决方案4】:

    简单的方法是将存储过程中的顺序列带到交叉表并根据该列设置顺序。

    然后抑制 order 列并将该列的宽度减小到最小像素,使其不会出现在交叉表中。

    【讨论】:

      【解决方案5】:

      使您想要按组字段排序的字段并将其隐藏。要隐藏它,请在 Crosstab Expert > Customize Style 对话框中选择此组,然后使用 Group Options 区域来抑制小计和抑制标签。为我工作。

      【讨论】:

        【解决方案6】:

        使用订单字段作为分组列并更改所述列的标签以显示实际尺寸。标签可以在Crosstab ExpertGrouping Options 和标签Options 中更改。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-04-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多