我正在使用报告选项卡-> 组排序专家-> 前 n 来获得前 n 条记录,但我在报告页脚中获得所有记录的值总和
我只想要前 n 条记录的总和...
我正在使用报告选项卡-> 组排序专家-> 前 n 来获得前 n 条记录,但我在报告页脚中获得所有记录的值总和
我只想要前 n 条记录的总和...
在计算总摘要后,组排序专家(以及记录排序专家)会干预您的最终结果。它无法过滤和删除行,就像 SQL 的 ORDER BY 子句无法影响 SELECT 的计数结果一样(这是 WHERE 子句的工作)。因此,将始终为您的详细信息部分的所有行计算您的摘要,当然,也为您的所有组总和计算。
如果您想以特定方式排除特定行以显示适当的总和,则可以使用 Crystal Reports 的 Select Expert 删除行。
或者(我相信这是最好的方法),我会在 SQL 命令中进行所有必要的计算,我只会将前 3 组的总和发送到报告中(然后你可以通过一个简单的总摘要得到你想要的这 3 条记录)
类似的东西
CREATE TABLE #TEMP
(
DEP_NAME varchar(50),
MINVAL int,
RMAVAL int,
NETVAL int
)
INSERT INTO #TEMP
SELECT TOP 3
T.DEP_NAME ,T.MINVAL,T.RMAVAL,T.NETVAL
FROM
(SELECT DEP_NAME AS DEP_NAME,SUM(MINVAL) AS MINVAL,SUM(RMAVAL) AS
RMAVAL,SUM(NETVAL) AS NETVAL
FROM YOURTABLE
GROUP BY DEP_NAME) AS T
ORDER BY MINVAL DESC
SELECT * FROM #TEMP