Hello,
First, your need is "not the simplest one". I mean you want to sell :
- "large box 100 unit <=> 10kg" as "PCE"
- "large bag 2kg" as "kg"
- "small bag 0,5" as "kg"
Within OERP product unit are either PCE or KG, they cannot be both at the same time.
"Transforming" product form one unit to an other one could only be done thru BOM (even if I agree that you may in real like only "open a box" and not really "make" the new product).
You _MUST_ perform a choice regarding the way you will manage your product within OpenERP (sometime you have to "adapt" the way you want to do regarding waht OpenERP is capable).
I thing you have two options (maybe more but only think to theses two right now) :
- use PCE as main unit and Kg as
secondary unit
- use kg as main unit
Detail of the two options
1) use PCE as main unit ( and optionally Kg as secondary unit)
OpenERP (at least in 6.1 which I use) use default UoM and optionally a secondary unit for Sale Purpose (Unit Of Sale).
I think you can use "PCE" as default UoM and kg as secondary UoS.
This way :
- you can make your inventory "easy" as
you say each "large box" once open is
fully repacked in "bag".
- each product will be "labelled" (in name and/or description) as
"large box 10kg", "large bag 1,9kg"
and "small bag 0,450 kg" during
product creation
- weight of the product will be filled in the "net weight" (ie:
1,9kg) and product+bag weight in
"total weight" (ie; 2kg), theses are
purely "informative" from OpenERP
description, this will never be used
as "stock qty".
- UoS of each product will be filled
with same value as "Net Weight" (ie 1,9kg for "large bag")
- Using a BoM you will be able to "transform" a "box 10kg" in 100x "large bag" and same from "large bag" to "small bag" using an other BoM
Then you simply have to sell qty in "PCE" of large box, large bax, small bag without boring of "kg". You only will have to consider "kg" as an "attribute" of your product (ie: like size, color, etc for clothes).
Last action will maybe to change a bit the report template used for Sale Order, invoice, ... as this will by default only show "PCE" qty and "PCE unitary price" and you want to have" "price/kg" shown if I correctly understand.
A simple "workaround" to do this is to simply write the "price/kg" in the "comment/description" of the product... but may be "dirty" if price change very often as you will have to change it twice; 1) in the "price" field and 2) in the comment.
2) Use kg as main unit
I'll not dig too far in but the main idea is :
you count everything as "kg" in your stock and you sold "kg".
You will then have to use packaging to define large box, large bag, small bag and use "price list" function to make your price automatically evolve depending the range of kg you are (0 -> 0,450 / 0,451 -> 1,9 / 1,91 -> 10 ) adding mini qty rules may help you to "round" correctly at each packing size _BUT_ you will have to make one line per "object" in the sale order.
Example: If customer order 5 large bag of 2kg... this will "count" as 10kg even if packing is 2kg...
So IMHO, I honestly don't advise you to use "kg" as main unit in your case.
About rounding, I did not deal with it right now in OpenERP so I can't give you clue.
In case you select "PCE" as main unit, for the large box I think it will be at least possible as "human workaround" for the buyer to "divide by ten" to convert amount of kg in box :)
Hope this will help you.
Have a nice day.
@++
Nicolas