Lets take a case Food industry:
FG Foods Ltd. sell variety of Chicken which can have different weight. The superior quality of a chicken weighs to 4 Pound (on an average) but the deviation can be ±10%. This chicken is purchased on number basis and later it is sold on Number (Each) basis as well as on weight (Pound-Lbs) basis. So here Chicken is getting transacted based on two UOM and FG Foods want to track Qty on both UoM basis.
To satisfy this requirement we need to define an item which can be tracked on two UoM, define converser rate between these UoMs.
Item Definition:
UoM Conversion:
Also define Inter-class conversion that too item specific.
Transactions:
Lets look at the transaction below, 100 Lbs comes to 25 chickens (as per tolerance), but if it goes beyond the tolerance then Oracle will not accept it.
In this case, based on tolerance defined it will accept values for secondary UoM ±2.5 (10% of 25).
So in below transactions one line is on –ve tolerance and other is on +ve tolerance.
On-hand and Availability:
Miscellaneous Issue:
Lets try doing issue transaction based on only Secondary UoM (Each). Oracle will automatically calculate quantity in other UoM based on the conversion rate.
On-hand Qty:
In above transaction, even though we did not give value in Lbs, Oracle deducted one chicken and 4 Pounds (refer the conversion).
51-1 = 50 Each
200-4 = 196 Lbs
Price List View:
Oracle accepts different price values for different UoM as shown below, and you can sell the product on any UoM.
Sales Order Lines 68097 :
Lets sell this product based on different UoM..
Oracle will pull the price based on UoM you mentioned on the Order line, also it asks to feed the secondary qty as well. But remember the final transaction will happen based on UoM added on Order line and then other qty will be calculated.
Now Process the Order: Book > Pick Release > Pick Confirm > Ship Confirm.
Observe the above shipping transactions,
Line 1.1: even though its showing Secondary Req Qty as 12 actual Secondary Shipped Qty is 11.5 (as per the conversion), as 46Lbs of chicken comes to 11.5 (46/4)
Line 1.2: Here we did not give qty in Lbs, so oracle calculated it based on conversion and populated.
At the end of this transaction the final On-Hand shall as below:
50 - (11.5+12) = 26.5
196 - (46+48) = 102