2008-10-02 362 views
7

我試圖創建一個Crystal Reports公式字段(用於計算價格的百分比變化),如果特定報表字段爲空,它將返回「不適用」 ,但如果不是,則使用會計格式(括號中包含負數)將數字返回到小數點後兩位。在Crystal Reports公式字段中使用「轉換爲文本」格式化字段

最近我已經能夠管理是這樣的:

If IsNull({ValuationReport.YestPrice}) Then 
    'N/A' 
Else 
    ToText({@Price}/{ValuationReport.YestPrice}*100-100, '###.00', 2) 

然而,這表示使用負號負數,沒有括號。

我嘗試過格式化字符串,如'###。00;(###。00)'和'(###。00)',但這些被拒絕爲無效。我怎樣才能實現我的目標?

回答

8

我認爲你正在尋找ToText(CCur(@Price}/{ValuationReport.YestPrice}*100-100))

您可以使用CCur以數字或字符串轉換爲Curency格式。 CCur(number)CCur(string)


我想這可能是你在找什麼,

Replace (ToText(CCur({field})),"$" , "")會給括號負數

這是一個有點哈克,但我不知道CR格式化非常親切

0
if(isnull({uspRptMonthlyGasRevenueByGas;1.YearTotal})) = true then 
    "nd" 
else 
    totext({uspRptMonthlyGasRevenueByGas;1.YearTotal},'###.00') 

上面的邏輯應該是你正在尋找的。

相關問題