We have a customer whose base unit for selling stuff is in thousands.  However stock can be as low as 0.001 thousands, but that last decimal place isn't displayed in the stock warning.

As you'll see from the example of "actual behaviour" below this is confusing.

Impacted versions:
- 8.0

Steps to reproduce:
- Install product and sale
- Create a unit of measure with:
  - Name: Thousand(s)
  - Product Category: Unit
  - Type: Bigger than the reference Unit of Measure
  - Bigger Ratio: 1000
  - Rounding Precision: 0.00100
- Create a product 'Widget' with
  - type = Stockable Product
  - UoM = Thousand(s)
- Create a Quotation
- Add to the Sales Order a line
- Choose Product: Widget
- Change Quantity to: 0.001 Thousand(s)

Current behavior:

Configuration Error!

```
Not enough stock ! : You plan to sell 0.00 Thousand(s) but you only have 0.00 Thousand(s) available !
The real stock is 0.00 Thousand(s). (without reservations)
```

Expected behavior:

Configuration Error!

```
Not enough stock ! : You plan to sell 0.001 Thousand(s) but you only have 0.000 Thousand(s) available !
The real stock is 0.000 Thousand(s). (without reservations)
```

res = super(SaleOrder, self)._prepare_procurement_group()
        res.update({'move_type': self.picking_policy, 'partner_id': self.partner_shipping_id.id})
        return res
    @api.model
    def _get_customer_lead(self, product_tmpl_id):
        super(SaleOrder, self)._get_customer_lead(product_tmpl_id)
        return product_tmpl_id.sale_delay
class SaleOrderLine(models.Model):
    _inherit = 'sale.order.line'
    product_packaging = fields.Many2one('product.packaging', string='Packaging', default=False)
    route_id = fields.Many2one('stock.location.route', string='Route', domain=[('sale_selectable', '=', True)])
    product_tmpl_id = fields.Many2one('product.template', related='product_id.product_tmpl_id', string='Product Template', readonly=True)
    @api.depends('order_id.state')
    def _compute_invoice_status(self):
        super(SaleOrderLine, self)._compute_invoice_status()
        for line in self:
            
            
            
            
            if line.order_id.state == 'done'\
                    and line.invoice_status == 'no'\
                    and line.product_id.type in ['consu', 'product']\
                    and line.product_id.invoice_policy == 'delivery'\
                    and line.procurement_ids.mapped('move_ids')\
                    and all(move.state in ['done', 'cancel'] for move in line.procurement_ids.mapped('move_ids')):
                line.invoice_status = 'invoiced'
    @api.multi
    @api.depends('product_id')
    def _compute_qty_delivered_updateable(self):