Different default locale settings produce different key names of same rules.
Hello. I use the "Localization wizard" tool to localize my application for several locales.
My application comprised of the CompanyRuleSet, CompanyRuleSetInt and SomeRuleSet.
There are also two locale rule sets: SomeRuleSet_uk(Ukrainian) and SomeRuleSet_ru(Russian).
I want to update existing and add new translations in Russian and Ukrainian. To do so, I utilize 'Localization Wizard'.
While I was downloading a Ukrainian localization, I noticed that (look at the 'Key' column, this 15 rules are same on all screenshots):
1) If I set 'en_US' as the default localization in my Operator and 'English' in 'Designer Studio -> UI -> Localization Tools -> Locale Settings' I get such TextToTranslate.xml file:
2) If I set 'uk' as the default localization in my Operator and 'Ukrainian' in 'Designer Studio -> UI -> Localization Tools -> Locale Settings' I get such TextToTranslate.xml file:
3) If I set 'ru' as the default localization in my Operator and 'Russian' in 'Designer Studio -> UI -> Localization Tools -> Locale Settings' I get such TextToTranslate.xml file:
I you could noticed that the key names differ between 'en_US' localization and 'uk'('ru') localizations. Rows from all tables with the same row number are translations for one rule entity.
Could someone explain to me why 'key' column of 'en_US' location differs from other 'key' columns?
***Updated by moderator: Lochan to add Categories***
This is behavior is an expected one. The reason for this is as follows.
In the first screenshot in your post, you see that there is no class name associated in the key column. This because there are no field values in the system existing with that identifier.
When ever we save a section while creating UI, behind the screens, rule-reference-indices are generated for all the labels, text that we have on that particular section. When the wizard is run, the wizard picks up these reference indices as well. Since these are not rules at this point of time, we don't have class names in keys.
Now if you see the Key column in the second and third screenshots in your post, you see that there are class names as well as a time stamp associated to it. This is because you either have a language pack installed or because you have already imported translations.
After running the wizard, and importing the translations, the system will create field values for these rule reference indices as well and so there will be keys with class names and time stamp associated to it.
Now your second and third screenshots are for translations for two locales. If the translations for these two locales are already available in the system, there will be same field values with different keys as they will be in two different locale rulesets.
To understand what i have mentioned above, i would suggest you do a simple exercise.
Take a fresh installation of Pega with out any locale rulesets/ language packs on it.
Create a sample application with just one or two screens
Now try to run the wizard in different locales and check the text to translate xml. It should have the same keys in both the files.
Now import one language pack or import translations for one of the languages and after that try running the wizard for those two languages again. You will see the exact same difference as in your screenshots.
Please reach out to me if you have any further queries.