2010-03-25 11 views
26

In Salesforce, se si sta vincolando una data in una pagina VisualForce, come si applica la formattazione personalizzata?Come formattare una data in VisualForce?

Esempio:

<apex:page standardController="Contact"> 
    <apex:pageBlock title="Test"> 
     <p>{!contact.Birthdate}</p> 
    </apex:pageBlock>     
    <apex:detail relatedList="false" /> 
</apex:page> 

Questa volontà uscita una data nel formato predefinito:

gio 1 luglio 09:10:23 GMT 2009

Come faccio a farlo (ad esempio) nel formato gg/mm/aaaa, come questo:

01/07/2009

(Speriamo che questa è una domanda abbastanza facile, ma per ottenere la comunità Salesforce succedendo qui immagino abbiamo bisogno di alcune domande facili.)

risposta

49
<apex:outputText value="{0,date,MM'/'dd'/'yyyy}"> 
    <apex:param value="{!contact.Birthdate}" /> 
</apex:outputText> 

link alla piena doc: http://www.salesforce.com/us/developer/docs/pages/Content/pages_compref_outputText.htm

+3

Con questo approccio è possibile utilizzare le classi JAVA piene di formattazione data da formattare: datetimes, numeri e valuta. – Daveo

+0

Buono a sapersi, lo sto cercando da un po '! Grazie –

+2

Puoi pubblicare un link per la documentazione? Mi piacerebbe sapere quali sono i primi due parametri in apice: outputText (0, date) significa. Grazie. –

2

La risposta sembra dipendere dal contesto. Ho una pagina VF che precompila la riga Oggetto di un'attività con il valore di NOW(). Per registrare con impostazioni locale dell'utente, ho inserito i metodi nel controller per il formato della data e datetime campi, in questo senso:

Datetime myDT = Datetime.now(); 
    String myDate = myDT.format(); 

Ma proprio ora in un'altra pagina VF dove sto solo la visualizzazione di un campo datetime, Ho confermato che SFDC gestiva la formattazione in base alle impostazioni locali dell'utente. E 'stato in questo contesto, in cui cm.CampaignMembers è una variabile dal controller:

<apex:column> 
     <apex:pageBlockTable value="{!cm.CampaignMembers}" var="cmp" > 
     <apex:column headerValue="" value="{!cmp.Campaign.Name}" /> 
     <apex:column headerValue="" value="{!cmp.Status}" /> 
     <apex:column headerValue="" value="{!cmp.FirstRespondedDate}" /> 
     <apex:column headervalue="" value="{!cmp.CreatedDate}" /> 
     </apex:pageBlockTable> 
    </apex:column> 
Problemi correlati