我在Crystal报表中运行Total时遇到问题 如果没有可用于Paticular字段的值,我们如何将运行总计返回为“0”
答案 0 :(得分:3)
不是直接在报表中显示“运行总计”,而是根据“运行总计”创建“公式字段”并将其拖到报表中。
您的公式应如下所示(Crystal语法)...
if ISNULL({#RunningTotalField}) then
"0.00"
else
ToText(RunningTotalField, 2)
答案 1 :(得分:0)
如果该特定组没有数据,则Crystal不会轻易显示。您的选择是:
1)使用子报告显示特定组的值,并使主报告仅查看包含组头的表。
2)使用存储过程作为源,这样您就可以完全控制运行的SQL。
问题是,只要您使用字段进行分组,Crystal就会返回已使用该字段的记录。如果只是在详细信息部分,您可以修改LEFT JOIN的链接,这没关系,但是组强制INNER JOIN,这意味着不返回没有数据的组。
答案 2 :(得分:0)
不幸的是,如果没有符合条件的记录,则不会显示Running Totals。另一种方法是使用在报告的各个部分计算的一组公式。这项技术在水晶文献中有广泛的描述。例如,this TekTips可以非常简洁地概述您的选项。
您可以在每个标题中设置初始化公式,并使用评估时间指令“WhilePrintingRecords”。在RunningTotal对象可用之前,这种方法是唯一可用于在“好日子”中运行总计的方法。