Hi TTO
I do agree with you on that point! However, the problem is complex and has been there a long time - and unfortunately is not easy to fix.
From your front end perspective - Steven's solution - though only a bandaid - is about as best that can be done.
The problem stems from long ago - and wasn't such a pronlem in V19 because they did the mathematics differently - unusually - data was stored (interestingly) as text - often and converted back and forth to single/double digits and then rounded - the conversion cleaned up residual decimals ( - I worked significantly with inventory and had work arounds).
AccountRight changed everything - they fixed some problems with the requirement for increased decimal places (accuracy) (asked by users/partners) but this created other problems.
The problem is not new - if you store data in double precision maths format - and work in single precision - you are going to get exactly the problem you now see.
The problem really rears its ugly head when using the API to POST and GET from a perpetual inventory - though, knowing the problem I was able to build code around and clean this up - it is not pretty.
Unfortunately, though not in anyway defending the developer in MYOB, but as a coder myself - this is a real difficult problem.
And you fix 1 problem but create another - the API has a big problem in this precsion problem.
Solution - go with Stevens offer to run a cleanup script.
The Doc