diff --git a/models/scop_partner_staff.py b/models/scop_partner_staff.py
index b108d2298b90a950ba8b1d1101cfcb97d1ebb17d..abee3fa46ff4d8321294c78ca12be8fc01fbbca9 100644
--- a/models/scop_partner_staff.py
+++ b/models/scop_partner_staff.py
@@ -1,7 +1,8 @@
 # © 2020 Le Filament (<http://www.le-filament.com>)
 # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
 
-from odoo import models, fields
+from odoo import models, fields, api
+from odoo.exceptions import ValidationError
 
 
 class ScopPartnerStaff(models.Model):
@@ -30,7 +31,8 @@ class ScopPartnerStaff(models.Model):
         ('regul_cg', 'Régularisation CG'),
         ('regul_diane', 'Régularisation Diane')],
         string="Type",
-        default='regul_ur')
+        default='regul_ur',
+        required=True,)
     effective_date = fields.Date(
         string="Date",
         default=fields.Date.today(),
@@ -43,3 +45,30 @@ class ScopPartnerStaff(models.Model):
         string='Questionnaire',
         ondelete='cascade')
     comment = fields.Char('Commentaire')
+
+    # ------------------------------------------------------
+    # OnChange
+    # ------------------------------------------------------
+    @api.onchange('type_entry')
+    def _onchange_type_entry(self):
+        """
+            Interdit la sélection questionnaire ou questionnaire inscription
+            sur l'interface
+        """
+        if self.type_entry in ('questionnaire', 'questionnaire_inscription'):
+            raise ValidationError(
+                'Vous ne pouvez choisir que des types "Régularisation".')
+
+    # ------------------------------------------------------
+    # Contrains
+    # ------------------------------------------------------
+    @api.constrains('staff_count')
+    def _check_staff_count(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 and record.type_entry not in ('questionnaire', 'questionnaire_inscription'):
+                raise ValidationError(
+                    "L'effectif renseigné doit être supérieur à 0.")
diff --git a/views/res_partner.xml b/views/res_partner.xml
index 0a184c604481d33fd603425d3979acea2d1764c6..a4bde090cd8b44f2a5e79486ddade5d0789ad75a 100644
--- a/views/res_partner.xml
+++ b/views/res_partner.xml
@@ -740,13 +740,13 @@
                                 </field>
                             </page>
                             <page name='scop_staff' string="Effectifs" attrs="{'invisible': [('project_status', '!=', '6_suivi')]}">
-                                <field name="staff_ids" mode="tree" context="{'default_partner_id': active_id}">
+                                <field name="staff_ids" mode="tree" context="{'default_partner_id': active_id, 'default_type_entry': 'regul_ur'}">
                                     <tree delete="false" default_order="effective_date desc" editable="top">
-                                        <field name="effective_date"/>
-                                        <field name="type_entry" readonly="1"/>
-                                        <field name="staff_count" attrs="{'readonly':[('type_entry','=','ministry_list')]}"/>
-                                        <field name="staff_shareholder_count" attrs="{'readonly':[('type_entry','=','ministry_list')]}"/>
-                                        <field name="staff_average" attrs="{'readonly':[('type_entry','=','ministry_list')]}"/>
+                                        <field name="effective_date"  attrs="{'readonly':[('type_entry','in',('questionnaire', 'questionnaire_inscription'))]}"/>
+                                        <field name="type_entry"  attrs="{'readonly':[('type_entry','in',('questionnaire', 'questionnaire_inscription'))]}"/>
+                                        <field name="staff_count" attrs="{'readonly':[('type_entry','in',('questionnaire', 'questionnaire_inscription'))]}"/>
+                                        <field name="staff_shareholder_count"  attrs="{'readonly':[('type_entry','in',('questionnaire', 'questionnaire_inscription'))]}"/>
+                                        <field name="staff_average"  attrs="{'readonly':[('type_entry','in',('questionnaire', 'questionnaire_inscription'))]}"/>
                                         <field name="comment" />
                                         <field name="user_id" readonly="1"/>
                                     </tree>