Can someone explain what's going on here?
If I try to get the output for the following string:
fn!char(65020) & " 21,245.00"
the result I get is:
﷼ 21,245.00
Discussion posts and replies are publicly visible
Oooh, even weirder update. if I try this one:
fn!char(65020) & " 112abas "
I end up with this:
﷼ 112abas
I think it has to do with the fn!char(65020) which is an Arabic symbol and as far as I know in the Arabish language they are writing/reading from right to left. Because if you try to get the char of another symbol i.e. fn!char(650) & " 21,245.00" this will give as result the "ʊ 21,245.00" or the fn!char(6502) & " 21,245.00" is giving "ᥦ 21,245.00" . As you can see, In both of them the symbol is in the correct position for us, the non-Arabish people :)
So, I guess the system is indicating the Arabish symbol and this is why is putting it on the right side for them :)
Hi Marco it was interesting for me. I did some experiment on this, observations are as follows.
There are two governing factors causing this behavior. 1. Currency Sign and 2. Appian Function using for concatenation
fn!char(65020) is displays the Arabic Currency Sign (Riyal Sign) using the unicode 65020 (which is for decimal).
Since it was the sign for currency, it look for the number and displays according to the Arabic syntax i.e, from right to left
Example:
fn!char(65020) & " 21,245.00" returns "﷼ 21,245.00" "21,245.00 "& fn!char(65020) returns "﷼ 21,245.00" concat(fn!char(65020)," ",5678 ) returns "﷼ 21245"
In case of the alphanumeric, if the number is first(left to right) followed by text, it picks the number follows Arabic syntax i.e, from right to left and appends the remaining alphabets.
concat(fn!char(65020)," 299dast") returns "﷼ 299dast" fn!char(65020) & "299dast" returns "﷼ 299dast"
In case of the alphanumeric, if alphabets are first(left to right) followed by number, it will treat the alphanumeric as text not as number. S0 it will display in the same format.
fn!char(65020) & "dast456" returns "﷼dast456" concat("dast456",fn!char(65020) ) returns "dast456﷼" concat(fn!char(65020)," dast456" ) returns "﷼ dast456"
concat("456dast",fn!char(65020) ) returns "456dast﷼"
Note: Thought the aphanumeric starts with number, due to concat() and the order, it returns "456dast﷼"
Above observations can be noticed with any language specific currency sign.
For example take the INR (India's currency sign). Syntax starts from left to right.
fn!char(8377)&" 123" returns "₹ 123" fn!char(8377)&" 123dast" returns "₹ 123dast" fn!char(8377) & " 21,245.00" returns "₹ 21,245.00" "21,245.00 "& fn!char(8377) returns "21,245.00 ₹" concat(fn!char(8377)," ",21245.00 ) returns "₹ 21245" concat(fn!char(8377)," 299dast") returns "₹ 299dast" fn!char(8377) & "299dast" returns "₹299dast"
fn!char(8377) & "dast456" returns "₹dast456" concat("dast456",fn!char(8377) ) returns "dast456₹" concat(fn!char(8377)," dast456" ) returns "₹ dast456"
As the pattern suggests, the language that you're trying to use doesn't work from left to right. Rather it depends on the character. All the numbers are left aligned. All the text is right-aligned to the language.