[Human Readable Change History] This module may unexpectedly change the locale of the application

Forge Component
(21)
Published on 8 Apr (12 days ago) by Johan den Ouden
21 votes
Published on 8 Apr (12 days ago) by Johan den Ouden

On the RecordDifferences action, several problems were detected with the "locale" parameter

a) changes the locale of the application. It is not the role of an audit generic component to change the locale of an entire application. This is a very serious design flaw that at very least should be documented on the action description. 

b) It is undocumented

c) does not translate static entities on the change description, only the change description "explanation"

d) it is mandatory. If we have a system action "GetCurrentLocale()", there is no point in asking for a locale unless the user wants to use a different locale

Hi,

I agree the locale parameter is not implemented th right way. It will change the locale if it's not the same as the locale of the application.

It is used here so the text the module generates for the logging can be different than the standard Spanish language.

The problem can be solved I guess by first getting the current locale, than set the locale to the user wants it and let the module do it's work and at the end set the locale back to the locale saved with the current locale.

Solution

Hi,

I have updated the component for OutSystems 10 and 11.
Can please download the new version and see if he problem is fixed.

"The locale parameter is not mandatory .

Setting the locale parameter no longer sets the locale for the entire application using the "Human Readable Change History" functionality.

The default language is english and can be changed only to "pt-PT".
Please only change the locale when you really want to because it has a negative influence on the performance."

Cheers,

Johan

Solution