在Salesforce中将 Decimal 数据转换成美元格式

闲言少叙,直接上代码(Apex Class 中的方法):

    private string ConvertToMoneyFormat(decimal price){
        if (price == null || Math.abs(price) < 0.005) return '$0.00';
        String s = (price.setScale(2) + (price >= 0 ? 0.001 : -0.001)).format();
        return '$' + s.substring(0, s.length() - 1);
    }

基本结果表现为:

11 ----> $11.00

1111 --->  $1,111.00

1111.1 --->  $1,111.10

1111.111 --->  $1,111.11

 

若是在页面的控件中以美元显示,可以用如下方法:

<apex:outputText value="{0, number, currency}">
    <apex:param value="{!EricSunCreditLimit}"/>
</apex:outputText>

 

或者用对数值进行一个更复杂的操作:

<apex:outputText value="{0, number, ##}%" >
    <apex:param value="{!IF(EricSunCreditLimit>99 && EricSunCreditLimit<100 ,99,EricSunCreditLimit)}"/>
</apex:outputText>

 

再来一个:

<apex:outputText value="{!'{0, number,###,###,##0.0}K'}">
    <apex:param value="{!ROUND(EricSunCreditLimit/1000,1)}"/>
</apex:outputText>

 

更多内容请看如下链接:

http://salesforce.stackexchange.com/questions/318/what-is-a-concise-function-that-formats-a-string-decimal-into-a-currency-forma 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值