As stevehare2003 explained, there are technical reasons why the rounding occurs. Genspoo gave an accurate description of how data is transmitted, and the likely cause is missing base code.
As stated earlier, to make your code snippet work, simply change the conditional statement to:
If (Round(CurrentPrice), 6) == 1.275)
and, BOOM! - the condition is met.
In eSignal, the application itself has logic to determine how many decimal places to display, so the issue is never apparent.
I feel we have offered an explanation of why this situation occurs and a perfectly efficient way to avoid the problem. I do not feel there is anything left to discuss and would like to concentrate my finite resources on other problems.
As stated earlier, to make your code snippet work, simply change the conditional statement to:
If (Round(CurrentPrice), 6) == 1.275)
and, BOOM! - the condition is met.
In eSignal, the application itself has logic to determine how many decimal places to display, so the issue is never apparent.
I feel we have offered an explanation of why this situation occurs and a perfectly efficient way to avoid the problem. I do not feel there is anything left to discuss and would like to concentrate my finite resources on other problems.
Comment