Monday, 9 August 2010

English Language browser and PeopleTools 8.50

If you have browser configured with a language other then English US (en-US) then you get an error signing into PeopleSoft unless you have that language installed in PeopleSoft.

Logon failed as the language you have selected is not enabled for this database.


The solutions to this are discussed here https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&doctype=PROBLEM&id=988042.1 but this does not tell the full picture.

The table PSLANGUAGES hold a mapping between PeopleSoft language code and iso language code.

select LANGUAGE_CD, ISO_LOCALE from PSLANGUAGES


When you login to PeopleSoft the browser iso locale is detected and an attempt to login using the associated PeopleSoft language code. So if I have a UK English browser then my iso locale is en-GB which maps to PeopleSoft language UKE which in most (if not all) installations does not exist.

If, on login, there is a Web Profile language override mapping set then this is used to derive the PeopleSoft language code.

So if en_GB=ENG (note the underscore not hyphen) is set in the Language Support field of the web profile then ENG would be used not UKE.

So, here's the gotcha. There are dozens of possible iso language variants (just open IE > InternetOptions > Languages > Add to see most of them) but only 254 characters in the web profile Langauge Support field. One solution that works is to use JUST the first part of the iso code. So this now becomes en=ENG. Now any browser with an en stem would map to ENG.

But there's another gotcha. This works fine for Spanish.... es=ENG. But it does not work for en=ENG. This drove me quite insane trying to figure out what was going on here until a very helpful analyst at Oracle Support came back with the solution.

If the ISO_LOCALE in PSLANGUAGES contains only an entry for the first part of the iso code (such as en) and other entries using the sane stem also exist (such as en_GB) then ALL iso codes must be mapped in the web profile (en and en_GB). So to get en=ENG mapping to work you need to add both en=ENG and en_GB=ENG. Hey presto.

Incidentally, multiple entries in the language support field should be separated by carriage returns.


3 comments:

pandakar said...

Thank You, this was driving me crazy on Firefox.

Hariharan said...

Hi,

Can you please help me to install peoplesoft at home PC. Where can i get the installation cd?

Wellers said...

You'd hope this might be the sort of thing you'd want to make sure didn't crop up if you were developing a product for an organisation that would be seeking applications from across the globe, like say the UN.

https://inspira.un.org was updated over the weekend but it no longer works because of this issue that you blogged about over a year ago. Clearly you can bodge a fix but strikes me this could cause all sorts of chaos unless you search for "Logon failed as the language you have selected is not enabled for this database".