@char + os language setting -> Fail :(

Have one “big” problem… As an app has shifted to more locations we see that code behaves differently depending on OS language settings:

We have a “list” of invalid chars… all formed with @char() [@Char(199):@Char(128):@Char(212):@Char(144):…]

These are set of chars we do not “allow” and translates.

Done in the simplest form… input field (text) and output field (computed). Call LS on Querysave event I do 2 options. Either check and see if the input has a banned char, or translate the char to an approved format, example “Ý”

banList = uiDoc.Document.parseBanListComplete

Then an ForAll chars in the INPUT, we compare and see if it exists in the banlist.

If so… either translate or alert user.

Works fine in most languages… but now some languages works very differently.

User in US,Norway, Spain enters A, code sees A.

User in Estonia or Lavtia enters A, code sees À.

User in Sweden enters u, code sees u

User in Norway enters u, code sees ü

So, this makes if very hard as the code is in one template. So I am stuck now! And there is no one to ask. Several questions on other forums… and no answers at all. Nothing in the documentation other then that @char works on IBM Code Page 850 code number. And some frigging languages interprets @char(x) to totally wrong chars. A is an A and NOT an Á or Y.

Tested estonian, latvian, norweigan and danish all 4 languages differ from english, german, dutch, russian. Frak… even russian seems to adhere to code page 850.

I would be very happy if someone knew anything about this. It makes it #&¤%¤# impossible to write code that is to be used somewhere else!