diff --git a/models/scop_partner_staff.py b/models/scop_partner_staff.py
index 75a21d7fac4ffae8fca47c72921c17ad1eebba26..641740d3c9fb5a125fe62c0db332897dad2d50ed 100644
--- a/models/scop_partner_staff.py
+++ b/models/scop_partner_staff.py
@@ -62,22 +62,19 @@ class ScopPartnerStaff(models.Model):
     # ------------------------------------------------------
     # Contrains
     # ------------------------------------------------------
-    @api.constrains(
-        'staff_count',
-        'staff_shareholder_count'
-        'staff_average')
-    def _check_staff_count(self):
+    @api.one
+    @api.constrains('staff_count', 'staff_shareholder_count', 'staff_average')
+    def _check_staff(self):
         """
             Interdit de créer une ligne à 0 sauf lorsque
             cette ligne vient de la liste ministère
         """
-        for record in self:
-            if ((record.staff_count == 0
-                    or record.staff_shareholder_count == 0
-                    or record.staff_average == 0)
-                    and record.type_entry not in ('questionnaire', 'questionnaire_inscription')):
-                raise ValidationError(
-                    "Tous les effectifs doivent être renseignés et supérieurs à 0.")
+        if ((self.staff_count == 0
+                or self.staff_shareholder_count == 0
+                or self.staff_average == 0)
+                and self.type_entry not in ('questionnaire', 'questionnaire_inscription')):
+            raise ValidationError(
+                "Tous les effectifs doivent être renseignés et supérieurs à 0.")
 
     @api.constrains('effective_date')
     def _check_effective_date(self):