我有一个Double的字段。要在报告上显示,如果该值为负,那么我需要通过将其乘以-1来反转该数字。结果应格式如下:“(1,000)”(注意没有“ - ”符号)。我怎么能在Crystal中做到这一点?我使用显示字符串公式来尝试这样做,因为“显示反向符号”选项对我不起作用(因为出于其他原因需要它是一个公式)。
到目前为止,我有:
if {columnName} < 0 then
"(" & ToText({columnName}, "#,###", 0) & ")"
else
"(" & ToText({columnName} * -1, "#,###", 0) & ")"
但是这给了我这样的东西:“( - 6,500)”,我需要摆脱那个讨厌的减号。
修改
我实现了一个像这样的公式字段:
-Abs({columnName})
然后从格式列表中选择看起来像(1,234)的格式,如下面Craig所述。
答案 0 :(得分:3)
Crystal Reports支持“会计”格式化,而不需要付出太多努力:
**编辑**
您也可以将此格式应用于公式字段。
答案 1 :(得分:1)
我以这种方式完成了我的要求&lt;我添加了一个公式并分配了所需字段的总和,然后我设置了它的格式(12,34.00),我也删除了美元符号。
Formula = replace(totext(Sum({myfield}) * -1),"$","")
答案 2 :(得分:0)
我面临同样的责任,但它具体操作系统。在Windows XP上没有任何格式问题,但在xp这个问题上面。删除所有格式后,在显示公式中使用以下公式。
替换(替换(替换(ToText(CurrentFieldValue,“##,##,##,## 0.00”,2),“$”,“”),“ - ”,“”),“,” , “”)