From d43a3efdb573cdd1575c2227acd64b150b626401 Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Fri, 11 Sep 2015 09:28:42 +0200 Subject: [PATCH] [FIX] sale_service: prevent deleting a task linked to a SO --- addons/sale_service/models/sale_service.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/addons/sale_service/models/sale_service.py b/addons/sale_service/models/sale_service.py index 6edaf396c36..977922e86e7 100644 --- a/addons/sale_service/models/sale_service.py +++ b/addons/sale_service/models/sale_service.py @@ -2,6 +2,7 @@ # Part of Odoo. See LICENSE file for full copyright and licensing details. from openerp.osv import fields, osv +from openerp.exceptions import UserError from openerp.tools.translate import _ @@ -133,5 +134,11 @@ class project_task(osv.osv): self._validate_subflows(cr, uid, ids, context=context) return res - - + def unlink(self, cr, uid, ids, context=None): + if context is None: + context = {} + for task in self.browse(cr, uid, ids, context=context): + if task.sale_line_id: + raise UserError(_('You cannot delete a task related to a Sale Order. You can only archive this task.')) + res = super(project_task, self).unlink(cr, uid, ids, context) + return res