You need to sign in to do that
Don't have an account?
How to use the translation workbench in visualforce?
Hi developers,
I would like to know if it is possible to use the translation workbench in visualforce.
I have my code, that at some stage looks like this:
<tr>
<td class="labelCol"><b>Currency to Invoice </b></td>
<td class="dataCol col02"> {!Lead.Currency_to_Invoice__c}</td>
<td class="labelCol"><b> Billing Language</b></td>
<td class="dataCol col02"> {!Lead.Billing_Language__c}</td>
</tr>
Lets take Billing_Language_c as example. This field is a picklist with the values: CAS, ENG, FRE that corresponds in the translation workbench to Spanish, English and French. When I show the value of the picklist in my code, instead of showing English, visualforce is showing ENG.
Can I somehow show the translated value of ENG,CAS or FRE in my visualforce page?
Thanks a lot. Regards,
Antonio
You may need to put the field references into an outputField tag for this to work- like <apex:outputField value="{!Lead.Billing_Language__c}"/>
Also a note since you have the field names hard-coded in your example, that to get the translated field names you can reference them like this- {!$ObjectType.Lead.Fields.Billing_Language__c.Label}
All Answers
Hi ,
Visibility of the picklist value in different language depends upon the locale setting of a particular user if translation work bench is set and enabled.
Hope this help you.
Cheers
Sanj
Hi,
the translation workbench is set and enabled but still wont show the translated values.
Thanks
The system wont show all the values by default, you have to mention the corresponding translation then only it will get displayed based on users locale.
Go to Translate Workbench->Translate -> Language->Setup Component(pick list)->Object
You have to fill in the translations for all the lovs you want.
--yvk
Hi,
I already did translate all the values but still cant see the translation in my visualforce page:
Instead of showing spanish, its showing CAS
Any help please?
Can you share your visual force code, also whats the logged in user's language ?
--yvk
You may need to put the field references into an outputField tag for this to work- like <apex:outputField value="{!Lead.Billing_Language__c}"/>
Also a note since you have the field names hard-coded in your example, that to get the translated field names you can reference them like this- {!$ObjectType.Lead.Fields.Billing_Language__c.Label}
Thanks a lot for your help!
Finally the solution was to put in the code the following:
<td class="labelCol"><b>Currency to Invoice </b></td>
<td class="dataCol col02"> <apex:outputField value="{!Lead.Currency_to_invoice__c}"/></td>
Just as Platy IT indicated!
Really appreciate!
Antonio