Hi,
We're using Odoo 17 entreprise OnPrem.
We've been trying to improve our purchasing and receiving workflows.
We buy and consume raw product based on weight, but they are shipped in cases by our suppliers. Currently, we do our receipts in raw kg, but we would like to use packagings to receive a number of cases instead to make receipts easier to process using barcodes.
The problem comes from the fact that we use kg as our base unit of measure, as the calculations for manufacturing are simpler using the metric system, but our suppliers ship cases in pounds.
Ex:
We buy product A in cases of 15lbs. Each case is priced at 42$, so 2.8$ per pound. For a specific PO, we buy 45 cases, for a total of 45x42$ = 1890$.
Almost everything works if I set the purchase UoM to pounds and use the per pound price in the PO. The only problem is that I end up with a decimal number of cases for the packaging quantity.
If i set the right number of cases, i get the wrong price:
I've calculated the correct conversion factors, but Odoo rounds off at 2 decimal places.
While calculating in Excel, using Odoo's built in factor for pounds (1 kg = 2.20462lbs), I get 6.80389...46kg per 15lbs case. Using the rounded conversion factor for my cases (6.80), I end up being off by about 0.4lbs on the whole PO, shifting the price by a few dollars or cents.
If I try to set the purchase UoM to kg directly, the unit price's precision doesn't allow me to get the exact total of 1890$, as the unit price would require 6 decimal places.
Is there a way to make the calculations more accurate or circumvent some conversions?
We've been working around the problem by creating the cases as UoM, but when the receipts are created, the default UoM is used. I've managed to manually set the UoM in the receipt to the case UoM and it worked great with the barcode app, but manually recreating every receipt is not viable.
Of course, when working with conversions factor that are "neater", this problem doesn't arrise (Units, for exemple)