Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.

Module: Products & Pricelists

Entity: product.product

Compute Method: _compute_quantities

View 20.0
Inputs Method Outputs
  • id
  • qty_available
+ """ Simple per company compute overriden by Stock._compute_quantities """
+ self.virtual_available = 0
+ self.incoming_qty = 0
+ self.outgoing_qty = 0
+ self.free_qty = 0
+ products = self.filtered(lambda p: p.type != 'service' and p.is_storable)
+ forecasted = products._compute_forecasted_without_stock()
+ for product in products:
+             vals = forecasted.get(product.id)
+             if not vals:
+                 continue
+             product.virtual_available = vals['virtual_available']
+             product.incoming_qty = vals['incoming_qty']
+             product.outgoing_qty = vals['outgoing_qty']
+             product.free_qty = max(0, product.qty_available - vals['outgoing_qty'])
  • virtual_available
  • incoming_qty
  • outgoing_qty
  • free_qty

Back to entity