2009-09-28 96 views

回答

0

值。如果不存在用于数据那个特殊的群体,那么Crystal就不会轻易展现出来。您的选项是:

1)使用子报表显示特定组的值,并使主报表仅查看包含组标题的表。

2)使用存储过程作为源,以便完全控制运行的SQL。

问题是,只要您使用字段进行分组,Crystal将只返回使用该字段的记录。如果只是在Details部分中,您可以将链接修改为LEFT JOIN并且无关紧要,但该组会强制INNER JOIN,这意味着没有数据的组不会返回。

0

不幸的是,如果没有符合条件的记录,则不显示运行汇总。另一种方法是使用报告各个部分计算的一组公式计算公式。该技术在Crystal文献中有广泛的描述。例如,this TekTips提供了一个非常简洁的选项概述。

您在每个标题中设置初始化公式,并使用评估时间指令“WhilePrintingRecords”。在RunningTotal对象可用之前,这种方法是唯一可用于在“良好”日进行总计运算的方法。

3

不是直接在报告中显示“运行总计”,而是基于“运行总计”创建公式字段并将其拖入报告中。

你的公式应该是这样的(Crystal语法)...

if ISNULL({#RunningTotalField}) then 
    "0.00" 
else 
    ToText(RunningTotalField, 2) 
+0

这帮了我太多,谢谢。 – ChargerIIC 2013-09-09 15:23:25