こんにちは、管理人の@Salesforce.Zです。
VF側でデータを表示させる時に
決まったフォーマットでデータを表示したい時ある
そんな時にapex:outputTextとapex:paramで
データのフォーマットを指定可能です。
今回、その指定方法を共有します。
欲しけりゃくれてやる・・・。
探せ!
この世の全てをそこに置いてきた〜笑
目次
サンプルコード
<!-- カンマ区切り数値 --> <apex:outputtext value="{0, number, ###,###}"> <apex:param value="{!classVariable}"></apex:param> </apex:outputtext> <!-- 0埋め6桁数値 --> <apex:outputtext value="{0, number, 000000}"> <apex:param value="{!classVariable}"></apex:param> </apex:outputtext> <!-- 日付と時刻 --> <apex:outputtext value="{0, date, yyyy/MM/dd HH:mm:ss}"> <apex:param value="{!classVariable}"></apex:param> </apex:outputtext>
フォーマット網羅
サンプルVF
<apex:page title="日付と数値のフォーマットVF"> <style> .TBcontent { border: 1px solid green; font: 12px, Verdana; } .tableHeader { background-color: blue; font: 16px, Verdana; color: white; } .bold { font-weight: bold; } </style> <table border="0" cellspacing="2" cellpadding="6" class="TBcontent" width="80%" align = "center"> <tr class="tableHeader"> <th> フォーマット </th> <th> 入力 </th> <th> 出力 </th> </tr> <tr> <td> <apex:outputtext value="{0, date, short}"></apex:outputtext> </td> <td> <apex:outputtext value="{!NOW()}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, date, short}"> <apex:param value="{!NOW()}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, date, medium}"></apex:outputtext> </td> <td> <apex:outputtext value="{!NOW()}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, date, medium}"> <apex:param value="{!NOW()}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, date, long}"></apex:outputtext> </td> <td> <apex:outputtext value="{!NOW()}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, date, long}"> <apex:param value="{!NOW()}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, date, full}"></apex:outputtext> </td> <td> <apex:outputtext value="{!NOW()}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, date, full}"> <apex:param value="{!NOW()}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, date, yyyy-mm-dd hh:mm:ss a}" styleClass="bold"></apex:outputtext> </td> <td> <apex:outputtext value="{!NOW()}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, date, yyyy-MMM-dd hh:mm:ss a z}"> <apex:param value="{!NOW()}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, integer}"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('123.456')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, integer}"> <apex:param value="{!VALUE('123.456')}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, currency}"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('123.456')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, currency}"> <apex:param value="{!VALUE('123.456')}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, percent}"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('0.5')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, percent}"> <apex:param value="{!VALUE('0.5')}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, 0000.0}" styleClass="bold"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('123.456')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, 0000.0}"> <apex:param value="{!VALUE('123.456')}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, ####.#}" styleClass="bold"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('123.456')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, ####.#}"> <apex:param value="{!VALUE('123.456')}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, 0.0000}" styleClass="bold"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('123.456')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, 0.0000}"> <apex:param value="{!VALUE('123.456')}"></apex:param> </apex:outputtext> </td> </tr> <tr> <td> <apex:outputtext value="{0, number, #.####}" styleClass="bold"></apex:outputtext> </td> <td> <apex:outputtext value="{!VALUE('123.456')}"></apex:outputtext> </td> <td> <apex:outputtext value="{0, number, #.####}"> <apex:param value="{!VALUE('123.456')}"></apex:param> </apex:outputtext> </td> </tr> </table> </apex:page>
出力結果
フォーマット | 入力 | 出力 |
---|---|---|
{0, date, short} | Thu Jul 26 07:26:08 GMT 2018 | 7/26/18 |
{0, date, medium} | Thu Jul 26 07:26:08 GMT 2018 | 26-Jul-18 |
{0, date, long} | Thu Jul 26 07:26:08 GMT 2018 | 26-Jul-18 |
{0, date, full} | Thu Jul 26 07:26:08 GMT 2018 | Thursday, July 26, 2018 |
{0, date, yyyy-mm-dd hh:mm:ss a} | Thu Jul 26 07:26:08 GMT 2018 | 2018-Jul-26 07:26:08 AM GMT |
{0, number, integer} | 123.456 | 123 |
{0, number, currency} | 123.456 | $123.46 |
{0, number, percent} | 0.5 | 50% |
{0, number, 0000.0} | 123.456 | 123.5 |
{0, number, ####.#} | 123.456 | 123.5 |
{0, number, 0.0000} | 123.456 | 123.456 |
{0, number, #.####} | 123.456 | 123.456 |