crystal报告汇总字段的条件格式

时间:2012-03-12 16:23:34

标签: crystal-reports

我正在尝试在摘要字段上创建小数格式公式。数据库中的值可以包含0,1或2个小数位。我从这开始:

If (CurrentFieldValue mod 1 = 0) Then
            0
Else If (CurrentFieldValue mod .1 = 0) Then
            1
Else
            2

在一个简单的单个数据字段上,它可以根据来自我的数据库的数据显示带有0,1或2个小数位的值。对于包含组数据的报表,相同的公式不适用于摘要字段。有什么想法吗?

修改:由于我不知道如何在评论中设置代码格式,因此我将在此处提出使用公式的建议:

没用。式:

Sum ({myTable.dataValue}, {myTable.groupField})

然后我用了:

If ({@formula} mod 1 = 0) Then
    0
Else If ({@formula} mod .1 = 0) Then
    1
Else
    2

我仍然掌握了所有内容的全部数字。我的舍入设置为.01,没有公式。我是否还需要一个舍入公式?我仍然不明白为什么这适用于个人价值而不适用于小组摘要。

2 个答案:

答案 0 :(得分:2)

好的 - 事实证明这是由于我们对mod函数缺乏了解:)

mod 1的所有内容实际上都返回0.这是您需要使用的公式:

if {ER100_ACCT_ORDER.ER100_ORD_TOT} * 100 mod 100 = 0 then
 0
else if {ER100_ACCT_ORDER.ER100_ORD_TOT} * 100 mod 10 = 0 then
 1
else
 2

:)

答案 1 :(得分:1)

如何仅创建公式字段而不是使用内置摘要字段:

sum({mytable.myfield})

然后您可以使用条件格式:

If ({@formula} mod 1 = 0) Then
        0
Else If ({@formula} mod .1 = 0) Then
        1
Else
        2