SalesforceでDecimalデータをドル形式に変換
1720 ワード
余談はさておき、直接コード(Apex Classの方法):
基本的な結果は次のとおりです.
11 ----> $11.00
1111 ---> $1,111.00
1111.1 ---> $1,111.10
1111.111 ---> $1,111.11
ページのコントロールにドルで表示されている場合は、次の方法があります.
あるいは、数値に対してより複雑な操作を行います.
もう一つ:
詳細については、次のリンクを参照してください.
http://salesforce.stackexchange.com/questions/318/what-is-a-concise-function-that-formats-a-string-decimal-into-a-currency-forma
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