Posted: 19 Jul 2017 15:00 EDT Last activity: 1 Aug 2017 1:45 EDT
BIX - History- .pyMessageKey not localized
I am running BIX extract to export work history for work object but pyMessageKey and pyMemo fields are not coming as they are displayed on UI. I noticed they were localized before displayed in listview - is there any way to localize it before or after BIX extract?
***Updated by moderator: Lochan to add Categories***
Before displaying in UI, Pega usually calls getLocalizedTextForString()/getLocalizedText() functions to get the LocalizedText for the String/Property respectively.
BIX extract would definitely not export the localized values. BIX is used to extract property values from BLOB to external sources like CSV, excel or DB.
If it is necessary to export localized values, you may create a new column/property to store the localized values in the work- class. This new column(an overhead) will not be used anywhere else except for extract.
Thanks for the reply. Those localize functions don't work when used in activity to covert MessageKey to new property. Upon more research in Pega control - they are displayed as literal (DisplayAsLiteral) on UI. Is it different from localize ? Is there any function available to concert as literal in activity?
In Pega Help it is mentioned Mode Literal/ displayAsLiteral control is used when we have to mask the property from HTML processing.
Literal mode is quite different from localization. If you're using getLocalizedText() in an activity, it shouldn't matter which control the property uses.
In the first Java step of the activity pzGetWorkHistoryPostProcessing, the pyMessageKey is being localised. Could you please refer it and use it accordingly in your scenario.
Mode Literal: Causes the value of the property to be masked from HTML processing. Use this if the value may contain angle bracket characters or other HTML elements that are not to be interpreted.
When you save a stream rule that includes a reference tag with this mode, you may receive a security warning message:
>>Warning>> Using mode=literal can expose the system to cross-site scripting attacks - use with caution.
Consider richtext mode as a more secure alternative.