Crystal 当两个不同的字段更改时,报告行应该更改

Crystal Report row should change when two different field is changed

我正在使用 crystal 报告 7 和 Oracle 数据库。我在 crystal 报告中实施了以下 SQL 查询:

SELECT ins.ins_name,ins.ins, SUBSTR(cardh.g_id,1,1), SUBSTR(cardh.g_id,2,2),
      SUBSTR(cardh.g_id,4,2), crdi.bn,
      sum(DECODE(cardh.crd_st, 'PO', 1, 0)) POCount,
      sum(DECODE(cardh.crd_st, 'CN', 1, 0)) CNCount
FROM crdh, crdi, ins
WHERE crdh.crd_st IN ('PO','CN') and crdi.bn in 
(select unique bn from crdh)and crdh.bn=crdi.bn and 
crdi.ins=ins.ins
GROUP BY ins.ins, crdi.bn, ins.ins_name, cardh.g_id
ORDER BY ins.ins, crdi.bn;

上述查询的输出:

为了在Crystal报表中实现上面的SQL查询,我在cardh.g_id、crdi.bn、ins.ins上按相同的顺序做了三组.但是 Crystal 报告仅在 cardh.g_id 发生变化时才更改行。我希望 Crystal 报告仅在 crdi.bn 也发生变化时才更改行。

当前报告如下:

以上报告应显示为 SQL 查询的输出。

排序记录专家截图:

好的,在这种情况下,您需要做的是将报告分组为您需要的字段组合。

创建一个公式 @Grouping 并编写如下组合:

ToText(cardh.g_id)+ToText(crdi.bn)+ToText(ins.ins)

现在使用上面的公式对报告进行分组。

编辑-------------------------------------

转到 Record Sort Expert 和 select 必填字段,然后根据您的要求 select 升序或降序。