【发布时间】:2014-05-16 06:20:31
【问题描述】:
我有一个类似的报告格式
Main Report
Installment # 1
SubReport
---------------
Group 1 (Suppressed)
Group 2 Detail 1:
ID Amount (Formula field)
-- -------
1 100
Group 2 (Footer)
------------
Total 200
------------
Group 2 Detail 2:
ID Amount (Formula field)
-- -------
1 300
Group 2 (Footer)
------------
Total 600
------------
我遇到的问题是我的第 2 组页脚中的公式字段的总数错误(我不明白为什么它们会加倍)
我分两步创建总字段。首先,我在第 2 组的详细信息部分中创建变量
我的金额公式字段
WhilePrintingRecords;
EvaluateAfter({@Share_Hundred_Percent});
EvaluateAfter({@Less_Commission});
EvaluateAfter({@Payment_NICL});
EvaluateAfter({@Payment_PRCL});
shared numberVar sumNetPayable;
numberVar result:=0;
if({Command.GENCLIENTCODE}=990) then
result:= {@Share_Hundred_Percent}-{@Less_Commission} + {@Payment_PRCL}
else
result:= {@Share_Hundred_Percent} - {@Less_Commission} ;
sumNetPayable := sumNetPayable + result;
result
然后我重置第 2 组页脚中的总字段(但它打印的数量是两倍)
我的公式字段显示总计
WhilePrintingRecords;
EvaluateAfter({@Net_Payable});
shared numberVar sumNetPayable;
numberVar result:= sumNetPayable;
sumNetPayable :=0;
result
更新
@SilentD。这是我发现的。我从报表设计视图中删除了两个公式(详细公式+摘要)。我只将 Sum 公式放在页脚中,它可以工作。但是当我将详细公式放入报告中时,总数翻了一番
【问题讨论】:
-
如果结果加倍,则公式必须每条记录执行两次。还有其他引用 sumNetPayable 的公式吗?或者您的金额公式是否在报告中放置了两次?
-
@SilentD 不错的评论,用新发现更新了我的帖子。
-
Sum ({"Amount (Formula field)"},{"based on which field in group"})..这一般对我有用,您可以自定义它。如果没有隐藏奇怪的逻辑,请检查公式。 :)
-
您是否正在重置第 2 组标题中的公式?
-
我猜您可能有 2 个详细信息,因此当您使用计算 2 次的公式时,这就是我要求您尝试删除它的原因..
标签: crystal-reports crystal-reports-xi crystal-reports-2010 crystal-reports-8.5