I would like to know how YOU handle the Quantity management.
We store quantities as units everywhere, no decimals.
The stock items have a profile associated with them. The profile can be factored or non-factored. It also holds a 'quantity decimals' value and a 'factor quantity' value.
If non-factored, the 'quantity decimals' is used in the UI, reports and calculations involving the quantity as:
qty / (10^qty decimals)
If factored, the 'factor quantity' is used in the UI, reports. So for something that comes in packs of 1000 it is displayed everywhere in 0/000 form. So if I have 20 packs of 1000 in stock my in-stock figure looks like 20/000 on screen and in reports. If split packs are allowed by the profile, it might look like 20/500 which is 20.5 packs of 1000. The actual in-stock figure held in the table there would be 20000 or 20500 respectively.