function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion

Possible we save picklist value in different language ?

Good day, 


Is there a chance for a user who currently having language setting in 'English'  and when object save, the picklist value will save in specific language based on given parameter. 


ie : if parameter lang='es' , spanish translation value of the selected picklist value will be save instead of english


Thank you ! 




I'm not sure if this helps, but you can ask salesforce to turn on Translation Workbench for your Org. You can then have picklist translation values ( as well as labels on almost anything).




Hi weznolte,

We already have different picklist translation value for different country, what i trying to do is, to save the value in different language value based on parameter instead of depend on user's language.

anyone can help ?



The only way I've done something like this before is to change the language of the current user, update the record, then change the language back. In pseudocode:



User me = UserInfo.getLanguage();

me.language = 'fr';

update me;


Picklistvalue p = 'oui';

update p;


me.language = 'en';

update me;


Obviously this is not ideal, but it is the only solution I can think of.



Thanks weznolte , this is great ...i will do a test on this ...appreciated your enlighten !

I'm working in an English org but adding some Spanish translation. Picklist values seem to be an oddity...


I add a Salutation picklist field to my custom object and add 'Mr' and 'Mrs' as the two picklist values. In translation workbench I translate these to 'Don' and 'Doña'.

I now change my user profile to Spanish Locale, Language and Timezone. Now I'm seeing salesforce in Spanish. If I look at an existing record I may see Don John Smith and if I edit the record I see the two Spanish options in the picklist. Maybe I'll add a Doña Jane Doe record too.

When I now run a Dataloader export I see Mr and Mrs in the output file even on the records I just edited/added. Browsing the database table in Eclipse/ForceIDE also shows me only Mr and Mrs are stored in that column.

If I go into config and look at the Salutation field's picklist values I see Mr and Mrs. Now that strikes me as odd since the whole page is being translated into Spanish yet I see the English picklist values. Now if I didn't know a word of English and I was an admin this would be very confusing!!

So say someone (Spanish) now asks me to insert a few records and gives me a csv containing a few Dons and Doñas, well it's my new language now so why not. Salesforce should be able to deal with it shouldn't it? I insert the csv file and all is good. I look at the inserted records in the SF screens and am seeing Don this and Doña that. I look at the table in Eclipse and now see my rows were inserted as Don and Doña in the Salutation column not Mr and Mrs like every other row. Ah, so now English speaking users will see Don Pedro Garcia for my inserted row and not Mr Pedro Garcia!!

If I now edit the record, in the Salutation picklist I'm seeing option 'Don' twice. The value 'Don' which I entered into the field and the translated 'Mr' from the translation workbench!


OK, time to change my user profile back to English. So the Translation Workbench works great for the screens, users get to interact with SF data in their own language. But in the database, where foreign-language admins might be working with Dataloader or adding picklist values in config screens, everything is working in English (or whatever the default for your org is).


I really expected Dataloader to translate values on the fly as it imported / exported the data.




I originally set up my profile and the company in German to gain a better understanding of the functions that salesforce has. Then I changed both to English and created some new users and set their language also to English. Now all tabs a nd pages are displayed in English but somehow the picklist values are only availbale in German. I tried to change it but can't work out how. This is especially unfortunate for the other users as they don't speak any German.

Any ideas how to solve this problem?





So the org is now in English and all the users are English speaking?

Do you have any need for German, do you plan adding any German users later?


All users are English speaking and there is no need for German at all and will never be in the future.


Create 2 new picklist values in English which are the replacements for the 2 German values you created.

Next click the 'replace' link next to the field name in the object's list of fields. You get a screen to let you update the records with the German value to the new English value. Replace both German values with the new English values.


Now you can delete the German values from the picklist's values.


It's not that I created these german picklist values. The problem is that I put my profile lanuage in German once and then put it back to English and ever since all picklist value come up in German instead of English although the whole rest of the page pulls through perfectly in English.


Have you had a look at the following Setup pages ?


Company Profile > Language Settings

Company Profile > Company Information

Translation Workbench > Translation Settings


If there is nothing obvious there then raise a case with salesforce through the Help & Training link at the top of the page.



Aniket Lihitkar 9Aniket Lihitkar 9
Hi @Nakata, can you please tell me how did you done that translation of the picklist values like you mentioned earlier in the comment "We already have different picklist translation value for different country" . please lett me know.
sami khan 12sami khan 12
Hello! Yes, it is possible to save picklist values in a different language based on a given parameter. One way to achieve this is by using the translation workbench in Salesforce. Translation workbench allows you to translate picklist values into different languages and specify which language to use for a particular user based on their language settings or a custom parameter.
To set this up, you can enable the translation workbench and create translations for your picklist values in the desired languages. Then, you can use formula fields or Apex triggers to retrieve the translated picklist value based on the language parameter or user language setting and save it to the object record.
Keep in mind that this approach requires some setup and maintenance effort to keep the translations up-to-date and consistent across your organization. Additionally, you should consider the impact on reporting and integrations that rely on the picklist values, as they may need to be updated to use the translated values as well.
More Info: