OpenERP 7 – Restreindre les droits d’accès à un menu

Prenons l'exemple du menu "Devis" dont je voudrais restreindre l'accès à certains groupes (administrateur , responsable des ventes).

Pour cela, nous allons créer un nouveau module "mysale_access" avec les 3 fichiers suivants :

__init__.py
que nous laissons vide

__openerp__.py

mysale_access.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
  <data>
    <record model="ir.ui.menu" id="sale.menu_sale_quotations">
            <field name="groups_id" eval="[(6, 0, [ref('base.user_root'),ref('base.group_sale_manager')])]" />
    </record>
  </data>
</openerp>

Explications :
- l'attribut "eval" permet l'insertion de code python dans du XML
- sachant que le champ "groups_id" est issu d'une relation many2many, la clause "[(6, 0, [ref('base.user_root'),ref('base.group_sale_manager')])]" supprime tous les précédents groupes autorisés à accéder au menu "menu_sale_quotations" et les remplace par les 2 groupes "administrateur" et "responsable des ventes"

- pour encore plus d'explications, cliquer ici 

2 réflexions au sujet de « OpenERP 7 – Restreindre les droits d’accès à un menu »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *