I'm sorry - but this IS NOT a "file corruption issue". A file corruption assumes that a mis-timed event or input or similar non-repeatable event has caused logical damage to the file. These rounding issues are not that. These are "repeatable" - in the sense that they appear accross both on-line and off-line files and that a given sequence of input/output transactions can reproduce the fault condition.
This problem has existed in MYOB for at least 5 years - it has been a constant problem and appears to be related to variations in the field masks used vs how rounding is handled (or not) within the various modules, most particularly the inventory/autobuild modules.
As an example, you can only do an "inventory adjustement" to 6 decimal places, but the field holding data appears to hold it as a double-precision "long" data type. If the mask used for rounding doesn't truncate to 6 decimal places, then rounding errors like this will occur (as they clearly do).
MYOB needs to review ALL their code to ensure that either the rounding function is used properly (to truncate to 6 decimal places) or the mask on the inventory adjustment input field is at least consistent with the data type being used. That way, users can fix their own inventory issues and "file corruption" will not occur.