如何使用 Crystal Report 按一个字段进行分组并按另一字段进行排序

问题描述 投票:0回答:4

我想使用 Crystal Report 按一个字段进行分组并按另一个字段进行排序。

例如:

Group A
PO Number
(按 ASC 排序)。对于每个采购订单号,都有一个名称,我想按
Name_x
排序。

我尝试使用

Record sort Expert
添加字段,或者使用
Name_x
创建一个新组,然后按新组排序,但不起作用。

PO_1         Name_4
PO_2         Name_2
PO_3         Name_3
PO_4         Name_1
PO_5         Name_7
PO_6         Name_6

结果一定是:

Name_1       PO_4
Name_2       PO_1
Name_3       PO_1
Name_4       PO_1
Name_6       PO_6
Name_7       PO_5
sorting crystal-reports
4个回答
7
投票

我找到了如下解决方案,效果很好。如果您有任何想法,请告诉我。

解决方案:我们将在每个组中创建摘要,可用于排序功能。

  • 第 1 步:在详细信息部分下方插入新部分。
  • 第 2 步:将您想要用于排序的字段拖动或添加到详细信息部分 报告的内容。将这些字段设置为已抑制。
  • 第 3 步:右键单击任何字段,为每个字段插入摘要(INSERT |SUMMARY 或单击工具栏上的 sigma),使用最大值作为摘要,并为每个部分插入组页脚(不是报告)页脚)。对您想要用于排序的所有字段重复此操作。
  • 第 4 步:同样,您可以选择添加单独的组页脚部分并使用“如果空白部分则隐藏”或“隐藏”
  • 第 5 步:使用报告 | GROUP SORT EXPERT 选择具有新最大值(ASC 或 DESC)的排序参数。
  • 第 6 步:如有必要,隐藏组或详细信息。

6
投票

我想建议一个简单的解决方案:-

  • 只需在 GroupExpert 中添加另一个组,即名称也意味着按名称对报告进行分组
  • 然后通过进入 GroupExpert->Option
  • 按名称对报告进行排序
  • 隐藏或抑制报告中新添加的组“名称” 仅此而已...

0
投票

使用报告->[组排序专家...]为组定义所需的排序策略


-1
投票

您的问题没有任何意义...如果您有一个采购订单号,但只有(唯一)名称,为什么要按一个属性分组并按另一个属性排序?你有 1:1 的关系,这意味着如果你按 PO 分组,那么你会得到结果:

PO_1         Name_4
P0_2         Name_2

如果您按名称分组,那么您会得到:

Name_1       PO_4
Name_2       PO_1

就是这样...您可以按要作为排序依据的属性进行分组。如果你有关系 1:N 那么整个问题可以通过另一种方式解决,但这对于这个问题并不重要。您的解决方案也具有“抑制”现场工作,但速度较慢,因为您首先按某些属性进行分组,然后抑制详细信息,然后计算其总和等......这个解决方案要简单得多

© www.soinside.com 2019 - 2024. All rights reserved.