diff --git a/addons/sale_timesheet/models/project.py b/addons/sale_timesheet/models/project.py index 2e79e71ab76..9af4cd514b6 100644 --- a/addons/sale_timesheet/models/project.py +++ b/addons/sale_timesheet/models/project.py @@ -340,8 +340,10 @@ class ProjectTask(models.Model): def _get_default_partner_id(self, project, parent): res = super()._get_default_partner_id(project, parent) if not res and project: - if project.pricing_type == 'employee_rate': - return project.sale_line_employee_ids.sale_line_id.order_partner_id[:1] + # project in sudo if the current user is a portal user. + related_project = project if not self.user_has_groups('!base.group_user,base.group_portal') else project.sudo() + if related_project.pricing_type == 'employee_rate': + return related_project.sale_line_employee_ids.sale_line_id.order_partner_id[:1] return res sale_order_id = fields.Many2one(domain="['|', '|', ('partner_id', '=', partner_id), ('partner_id', 'child_of', commercial_partner_id), ('partner_id', 'parent_of', partner_id)]")