diff --git a/addons/sale/models/sale.py b/addons/sale/models/sale.py index 4858afdaa19..a37ee94e411 100644 --- a/addons/sale/models/sale.py +++ b/addons/sale/models/sale.py @@ -1183,7 +1183,7 @@ class SaleOrderLine(models.Model): on SO lines. This method is a hook: since analytic line are used for timesheet, expense, ... each use case should provide its part of the domain. """ - return [('so_line', 'in', self.ids), ('amount', '<=', 0.0)] + return ['&', ('so_line', 'in', self.ids), ('amount', '<=', 0.0)] @api.multi def _analytic_compute_delivered_quantity(self): diff --git a/addons/sale_timesheet/models/sale_order.py b/addons/sale_timesheet/models/sale_order.py index fb1fd232ed8..9e8fd178a74 100644 --- a/addons/sale_timesheet/models/sale_order.py +++ b/addons/sale_timesheet/models/sale_order.py @@ -175,6 +175,7 @@ class SaleOrderLine(models.Model): @api.multi def _analytic_compute_delivered_quantity_domain(self): domain = super(SaleOrderLine, self)._analytic_compute_delivered_quantity_domain() + domain = expression.AND([domain, [('project_id', '=', False)]]) timesheet_domain = self._timesheet_compute_delivered_quantity_domain() return expression.OR([domain, timesheet_domain])