我有一份报告,其中包含一些有限的重复信息,可能有多个日期,但我希望美元值只显示在第一项上。
IE:
项目1 - 2010年8月3日 - 成本$ 1000
第1项 - 2010年8月4日 - (成本受到抑制)
第2项 - 2010年8月3日 - 100美元 第3项 - 2010年8月4日 - $ 200
总结时,它应显示为$ 1,300,但显示为$ 2,300。
我通过使用公式来抑制成本部分:
(
if (Previous({MyReportData;1.MyItemId}) = {MyReportData;1.MyItemId}) then
true
else
false
)
这个公式很好。
我尝试创建一个公式来执行自定义SUM,它将排除重复的项目,但它会一直说“此字段无法汇总。
有什么想法吗?
答案 0 :(得分:2)
您有两个选择
修改SQL以仅引入所需的数据。你显然不想要2010年8月4日这一行。所以不要把它带到报告中。然后您的摘要将按预期工作。
创建一个运行总计,并使用与抑制公式相反的方法评估行的更改。
答案 1 :(得分:0)
另一种选择是使用全局变量来使用您用来抑制的逆条件来跟踪总和。与使用Crystal的Running Totals或Summary字段相比,这在性能方面应该更好。
虽然,我认为使用SQL Expression只需按ItemID选择具有最早日期的行会更快,并且会避免Crystal不得不通过数据。