Environment: Service Desk 7.5 with Multilingual Feature Pack applied or Service Desk 7.5 SP1
When performing design work within Process or Object Designer you see the message when trying to save your changes: "You cannot change localised attributes, because you are not using the default language. Logon as a user with the default language as their culture and try again". This error is not seen if you login as SA. You may not be even using the multilingual translation functionality of SP1 in order to experience this issue.
Reason for error:
New multilingual functionality was introduced within a Feature Pack for 7.5 and was also included within Service Desk 7.5 SP1. As a part of this some safeguards were put into the product so that only users whose culture was set as the base language would be able to make design changes. This is so that there wouldn't be any confusion for the designer around which language or translation they were creating items for and then they could add in translations for different languages if needed.
This message can also be seen in the following circumstances:
- Users have upgraded to SP1 with a value set in their culture and this hasn't been cleared by the upgrade correctly. Therefore they will see this error if the value within the culture field does not match the base language for the database.
- In some circumstances an invalid culture is being set for newly created users based on the server IIS settings. If when a user is created, your IIS culture settings don't match your base language for the product you will see the above error displayed if that user tries to save design changes. NOTE: If you place the culture value on your user window it may appear that the culture value is actually blank but if you look in the tps_culture column within the tps_user table it will be storing a value.
These two issues have been fixed with a Hotfix in 7.5 SP1http://community.landesk.com/support/docs/DOC-26784
Suggested ways around this:
1 - Login as SA to complete design changes.
2- Manually pick the Base language for your analyst users who do design work. If the culture is not on the Analyst window login as SA and then place the culture attribute onto the window.
IMPORTANT: This last workaround is more automated but can only be followed if you don't use multilingual functionality as it will clear any value which you try to store in a new user record:
3 - Firstly test out this procedure on a test environment and when applying to live take a backup of your database and ensure that no users are logged in. Run the first statement below against your database in order to clear the culture value stored for all existing users:
update tps_user set tps_culture = NULL where tps_culture <> NULL
- Next run this second statement in order to create a trigger. This will fire when new users are created or imported and will clear the culture value:
For SQL Server:
CREATE TRIGGER tr_clear_culture_value ON tps_user FOR INSERT AS update tps_user set tps_culture = NULL where tps_guid = (select tps_guid from inserted)
CREATE OR REPLACE TRIGGER tr_clear_culture_value BEFORE INSERT ON tps_user FOR EACH ROW BEGIN :new.tps_culture := NULL; END;