fixed() returning wrong value for more than 16 character

 Hi,

 

I am getting issue with fixed() function. Its returning weird value for more then 16 character.

stripwith(fixed("1234567890123456",4,true),"~") ---"1234567890123456.0000"

 stripwith(fixed("123456789012345612",4,true),"~")--- "123456789012345616.0000"

 

Same way you add number at 17th position onwards you will come to know.

 

Kindly help me on this what could be the possible solution.

  Discussion posts and replies are publicly visible

Parents
  • Hi, Appian decimal numbers' precision cannot be more than 17 digits. You can play around with below code in an interface:

    a!floatingpointfield(
    label: fixed(123456789012345.1, 1,true),
    value: 123456789012345.12345
    )

    It seems like "fixed()" function works with precision of 16. After that it approximates the value. What kind of use case do you have with having numbers that large? Do you need to do any calculations on them or only display them? Are you working with only integers or decimal numbers?
Reply
  • Hi, Appian decimal numbers' precision cannot be more than 17 digits. You can play around with below code in an interface:

    a!floatingpointfield(
    label: fixed(123456789012345.1, 1,true),
    value: 123456789012345.12345
    )

    It seems like "fixed()" function works with precision of 16. After that it approximates the value. What kind of use case do you have with having numbers that large? Do you need to do any calculations on them or only display them? Are you working with only integers or decimal numbers?
Children