Crystal Reports:公式字段中求和的错误

时间:2009-01-08 15:52:25

标签: crystal-reports

说明: 我有一份非常复杂的报道。为了使它更简单,我以这种方式构建我的报告: 在VS.net中,我有一个班级。在报告中,我创建了“仅字段定义”文件(ttx),它与类完全相同。在后面的代码中,我将类设置为(子)报告的数据源。

问题: 一个类(以及ttx文件)具有以下字段:PriceTraditional,PriceCommercial。并且有2个公式字段是SumPriceTraditional,SumPriceCommercial。

当类为空时,数据源也为空。这是发生错误的时候。可能是因为我取了一个NULL的字段的总和。

我尝试过的解决方案(但不起作用):

  1. 我尝试使用formulaField更改PriceTraditional(例如:PriceTraditionalDummy;使用公式: if isnull({DamageForReport.PriceTraditional})然后0 else {DamageForReport.PriceTraditional} 。但后来我收到错误:这里需要一个数字。(这是由结构的else部分引起的。
  2. 我尝试打开和关闭默认值替换(无结果)
  3. 问题我只想要一个报告,如果总和中使用的字段为空,我可以使用该Sum-FormulaField而不会炸毁报告。

    关于如何解决这个问题的任何建议都会很棒!!

    亲切的问候,

    维姆

2 个答案:

答案 0 :(得分:2)

您可以尝试的一些事情是使用CCur将0转换为Currency或使用CDbl或ToNumber将{DamageForReport.PriceTraditional}转换为数字。

由于某种原因,它似乎认为第一部分中的0和第二部分中的{DamageForReport.PriceTraditional}具有不同的类型,因此您可以使用其中一个来匹配另一个。

我没有尝试过这两种方法,但它可能就像使用$ 0或0.0而不是0一样简单。

只是抛出一些想法。希望它有所帮助。

答案 1 :(得分:0)