diff --git a/addons/project_purchase/models/__init__.py b/addons/project_purchase/models/__init__.py index 62a525c47db..7566db2c098 100644 --- a/addons/project_purchase/models/__init__.py +++ b/addons/project_purchase/models/__init__.py @@ -1,3 +1,4 @@ # -*- coding: utf-8 -*- # Part of Odoo. See LICENSE file for full copyright and licensing details. from . import project +from . import purchase_order_line diff --git a/addons/project_purchase/models/project.py b/addons/project_purchase/models/project.py index 9de301d16d2..4efd8485b10 100644 --- a/addons/project_purchase/models/project.py +++ b/addons/project_purchase/models/project.py @@ -40,7 +40,7 @@ class Project(models.Model): 'views': [[False, 'tree'], [False, 'form']], 'domain': [('id', 'in', purchase_orders.ids)], 'context': { - 'create': False, + 'project_id': self.id, } } if len(purchase_orders) == 1: diff --git a/addons/project_purchase/models/purchase_order_line.py b/addons/project_purchase/models/purchase_order_line.py new file mode 100644 index 00000000000..7c9f406f1a1 --- /dev/null +++ b/addons/project_purchase/models/purchase_order_line.py @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import fields, models + + +class PurchaseOrderLine(models.Model): + _inherit = 'purchase.order.line' + + def _default_account_analytic_id(self): + if self._context.get('project_id'): + return self.env['project.project'].browse(self._context['project_id']).analytic_account_id + return False + + account_analytic_id = fields.Many2one(default=_default_account_analytic_id)