Received a response from Epicor on this:
This is caused because of the conversion factor, the rounding of the UOM, and the fact the base UOM for the part is SQFT while the supplier price list is in LM.
The issue is that the requirement of 8000 cannot be divided correctly by the conversion factor to give a value in LM.
That means for example, if you were to divide 8000 (the requirement) by the conversion factor 16.4042, the exact or almost exact number to get the 8000 SQFT required, would be 487.6799843942405 which has way too many decimals for the system to calculate, trying to round the decimals to a smaller quantity will never give the exact 8000 units.
The same applies for the conversion factor, in order to have the exact conversion, the factor would need to be 16.4042000001426 which again has too many decimals for the system to handle.
There are a couple of options available here.
1- Delete the supplier price list and recreate it with the SQFT unit for the supplier, then change the PO if required.
2- Change the conversion factor to something that would give a number with not so many decimals, for example, using a factor of 16 would work, but there might be a different combination of decimals that help.
There might be other options to manage this, so I believe it would be useful to review your requirement with an EPICOR consultant, let me know if you would like me to get you incontact with a consultant and please try any of the 2 suggestions.
So I’m reading that as, the calculation must go both ways, otherwise they aren’t the same number. It’s designed this way and it only fails to work because there aren’t enough decimal places (in this case) to fully capture how one UOM translates to the other.
I believe we may reevaluate what values we are going to plug in for the conversion factor.
I was also doing some testing with allowing decimals, but only 3. This would allow us to retain that level of detail if needed, but would also force the system to round to the nearest whole number when the conversion is only off by .00000001.