From 45e7389a1e479df03f3cf8f64722b33b063f95f1 Mon Sep 17 00:00:00 2001 From: Goffin Simon Date: Wed, 12 Jul 2017 10:47:52 +0200 Subject: [PATCH] [FIX] mrp, resource: Wrong default value for Time Efficiency The time efficiency cannot be set to 0 otherwise it raised an error when creating a workorder. opw:751638, 752035 --- addons/mrp/models/mrp_workcenter.py | 2 +- addons/resource/i18n/resource.pot | 6 ++++++ addons/resource/models/resource.py | 7 +++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/addons/mrp/models/mrp_workcenter.py b/addons/mrp/models/mrp_workcenter.py index 0dc9cdc96af..cc12ec0060b 100644 --- a/addons/mrp/models/mrp_workcenter.py +++ b/addons/mrp/models/mrp_workcenter.py @@ -15,7 +15,7 @@ class MrpWorkcenter(models.Model): # resource name = fields.Char(related='resource_id.name', store=True) - time_efficiency = fields.Float('Time Efficiency', related='resource_id.time_efficiency', store=True) + time_efficiency = fields.Float('Time Efficiency', related='resource_id.time_efficiency', default=100, store=True) active = fields.Boolean('Active', related='resource_id.active', default=True, store=True) code = fields.Char('Code', copy=False) diff --git a/addons/resource/i18n/resource.pot b/addons/resource/i18n/resource.pot index 30b510ade92..aa093e5292e 100644 --- a/addons/resource/i18n/resource.pot +++ b/addons/resource/i18n/resource.pot @@ -441,6 +441,12 @@ msgstr "" msgid "This field is used to calculate the the expected duration of a work order at this work center. For example, if a work order takes one hour and the efficiency factor is 100%, then the expected duration will be one hour. If the efficiency factor is 200%, however the expected duration will be 30 minutes." msgstr "" +#. module: resource +#: code:addons/resource/models/resource.py:667 +#, python-format +msgid "The efficiency factor cannot be equal to 0." +msgstr "" + #. module: resource #: selection:resource.calendar.attendance,dayofweek:0 msgid "Thursday" diff --git a/addons/resource/models/resource.py b/addons/resource/models/resource.py index 3d09ddb55a3..9469c3847c4 100644 --- a/addons/resource/models/resource.py +++ b/addons/resource/models/resource.py @@ -659,6 +659,13 @@ class ResourceResource(models.Model): required=True, help="Define the schedule of resource") + @api.multi + @api.constrains('time_efficiency') + def _check_time_efficiency(self): + for record in self: + if record.time_efficiency == 0: + raise ValidationError(_('The efficiency factor cannot be equal to 0.')) + @api.model def create(self, values): if values.get('company_id') and not values.get('calendar_id'):