IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Odoo (ex-OpenERP) Discussion :

Affichage d'un module suivant un groupe d'utilisateurs défini


Sujet :

Odoo (ex-OpenERP)

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 18
    Points
    18
    Par défaut Affichage d'un module suivant un groupe d'utilisateurs défini
    Bonjour,

    je rencontre des difficultés avec mon module je n'arrive à avoir accès avec un compte utilisateur autre que ''admin'' pourtant dans l'XML de mon module à la balise "menuitem" j'ai bien rajouté le paramètre : groups="group_operateur" et également ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <record model="res.groups" id="group_operateur">
      <field name="name">groperateur</field>
    </record>
    dans openerp à la rubrique Utilisateurs/Groupes je retrouve bien mon groupe "groperateur" auquel je rajoute un utilisateur mais mon module ne s'affiche pas lorsque je me connecte avec celui-ci

    une idée ?

  2. #2
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Bonjour,

    tu mets groups="group_operateur"
    mais tu as: id="group_operateur_test"

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 18
    Points
    18
    Par défaut
    merci N1bus pour la réponse, oui effectivement cet un oubli de frappe dans mon module l'id est bien identique au nom du groupe je corrige mon post sinon concernant mon pb idée ou une piste ?

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 7
    Points : 13
    Points
    13
    Par défaut
    As-tu mis un répertoire "security" dans ton module avec les droits d'accès? J'ai déjà eu ce problème lorsque je créais de nouvelles entités et que je n'avais mis aucun droit d'accès. Pour se faire, je te donne l'exemple suivant :

    Un fichier .CSV dans le répertoire "security" à la base de ton module. Le mien s'appelle ir.model.access.csv . En fait, tout mes fichiers de droits d'accès s'appellent ainsi.

    La première ligne sert à définir ce que sont les autres lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
    access_mrp_bom_attribute,mrp.bom.attribute,model_mrp_bom,base.group_user,1,1,1,1
    Ma nouvelle entité est mrp.bom . Il ne reste plus qu'à importer le fichier de sécurité dans le fichier __openerp__.py ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        'data': [
            'mrp_bom_view.xml',
            'mrp_manufacturing_view.xml',
            'product_view.xml',
            'report/reports.xml',
            'security/ir.model.access.csv',
            'wizard/mrp_manufacturing_printing.xml',
            'wizard/mrp_bom_wizard.xml',
        ],
    Et voilà, je peux maintenant accéder aux éléments du menu pour aller créer ma nouvelle entité! J'espère que cela règlera ton problème!

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 18
    Points
    18
    Par défaut
    Merci pour ta réponse Miclamb, donc j'ai comme tu m'a indiqué je fait l'ajout du répertoire "security" puis création du fichier CSV 'ir.model.access.csv'

    puis ajout de la ligne 'security/ir.model.access.csv' dans mon fichier __openerp__.py et j'ai l'erreur suivante :

    IOError: File not found: monmodule/security/ir.model.access.csv

    pourtant le fichier est bien présent et j'ai vérifier à trois fois qu'il n'ai pas d’erreur dans le nom et chemin

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 7
    Points : 13
    Points
    13
    Par défaut
    Bonjour gnomathibus!

    Peux-tu me dire quel version d'OpenERP tu utilises? Je ne comprends pas pourquoi OpenERP n'arriverait pas à trouver un fichier si le chemin est bon.. As-tu bien mis la virgule à la fin de ton chemin dans le fichier .py? J'oublie parfois de le faire et cela cause un problème. Le chemin a-t-il bien été ajouté dans la partie 'data' du fichier __openerp__.py ? J'ai un module encore plus simple pour les transporteurs que je peux t'inclure ici tous les codes... Théoriquement, tout devrait bien fonctionner..

    Mon module s'appele stock_carrier

    fichier stock_carrier/security/ir.model.access.csv
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
    access_stock_carrier_attribute,stock.carrier.attribute,model_stock_carrier,base.group_user,1,1,1,1
    fichier stock_carrier/__openerp__.py
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    {
        "name" : "Stock Transporteur",
        "version" : "1.0",
        "author" : "Mic Lamb",
        'category': 'Stock carrier',
        'complexity': "easy",
        "depends" : ["base","stock"],
        "data" : [
            "stock_carrier_view.xml",
            'security/ir.model.access.csv',
        ],
        "demo_xml" : [],
        "description": "Carrier's list",
        "auto_install": False,
        "installable": True,
    }
    Si tout te semble conforme, tente de copier ton code et on y jettera un coup d'oeil! Bonne journée!

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 18
    Points
    18
    Par défaut
    mon fichier __openerp__.py :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        {
            'name': "Lesaffre GPAO",
            'version': "0.1",
            'author': "Thibault Buisson",
            'category': "Manufacturing",
            'depends': ['product','mrp','mrp_operations'],
            'data': [
    			"lesaffre_gpao.xml",
    			'security/ir.model.access.csv',
    		],
    		'demo': [],
            'installable': True,
        }
    et mon fichier ir.model.access.csv qui est bien présent dans le répertoire security de mon module :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
    access_lesaffre_gpao_operateur,lesaffre_gpao_operateur.model,model_lesaffre_gpao_operateur,groupe_lesaffre_operateurs,1,1,1,1
    sinon je suis sous openerp 7

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 7
    Points : 13
    Points
    13
    Par défaut
    Pour commencer voici comment je coderais le fichier .csv ainsi bien que ce n'est surment pas la raison pour laquelle OpenERP ne voit pas le fichier.
    Si ta nouvelle classe est lesaffre.gpao (dans mon cas il s'agissait de stock.carrier)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
    access_lesaffre_gpao_attribute,lesaffre.gpao.attribute,model_lesaffre_gpao,base.group_user,1,1,1,1
    Je débuterais par mettre base.group_user qui donne accès à tout le monde d'abord pour faire le test. Ensuite je restreindrais l'affichage avec ton nouveau groupe.

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 18
    Points
    18
    Par défaut
    Merci pour ton aide McLamb, mais toujours le même pb, sinon si cela peu aider le message d'erreur au complet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    Client Traceback (most recent call last):
      File "/usr/lib/pymodules/python2.7/openerp/addons/web/http.py", line 204, in dispatch
        response["result"] = method(self, **self.params)
      File "/usr/lib/pymodules/python2.7/openerp/addons/web/controllers/main.py", line 867, in authenticate
        req.session.authenticate(db, login, password, env)
      File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 115, in authenticate
        uid = self.proxy('common').authenticate(db, login, password, env)
      File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 30, in proxy_method
        result = self.session.send(self.service_name, method, *args)
      File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 103, in send
        raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)
    
    
    Server Traceback (most recent call last):
      File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 89, in send
        return openerp.netsvc.dispatch_rpc(service_name, method, args)
      File "/usr/lib/pymodules/python2.7/openerp/netsvc.py", line 292, in dispatch_rpc
        result = ExportService.getService(service_name).dispatch(method, params)
      File "/usr/lib/pymodules/python2.7/openerp/service/web_services.py", line 433, in dispatch
        return fn(*params)
      File "/usr/lib/pymodules/python2.7/openerp/service/web_services.py", line 444, in exp_authenticate
        res_users = pooler.get_pool(db).get('res.users')
      File "/usr/lib/pymodules/python2.7/openerp/pooler.py", line 49, in get_pool
        return get_db_and_pool(db_name, force_demo, status, update_module)[1]
      File "/usr/lib/pymodules/python2.7/openerp/pooler.py", line 33, in get_db_and_pool
        registry = RegistryManager.get(db_name, force_demo, status, update_module)
      File "/usr/lib/pymodules/python2.7/openerp/modules/registry.py", line 193, in get
        update_module)
      File "/usr/lib/pymodules/python2.7/openerp/modules/registry.py", line 219, in new
        openerp.modules.load_modules(registry.db, force_demo, status, update_module)
      File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 350, in load_modules
        force, status, report, loaded_modules, update_module)
      File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 256, in load_marked_modules
        loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
      File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 188, in load_module_graph
        load_data(module_name, idref, mode)
      File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 76, in <lambda>
        load_data = lambda *args: _load_data(cr, *args, kind='data')
      File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 109, in _load_data
        fp = tools.file_open(pathname)
      File "/usr/lib/pymodules/python2.7/openerp/tools/misc.py", line 173, in file_open
        return _fileopen(name, mode=mode, basedir=rtp, pathinfo=pathinfo, basename=basename)
      File "/usr/lib/pymodules/python2.7/openerp/tools/misc.py", line 220, in _fileopen
        raise IOError('File not found: %s' % basename)
    IOError: File not found: lesaffre_gpao/security/ir.model.access.csv

  10. #10
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 7
    Points : 13
    Points
    13
    Par défaut
    Je reproduis ton erreur seulement si je fais une erreur dans le chemin vers le fichier .CSV dans __openerp__.py . J'ai de la difficulté à comprendre pourquoi cela ne fonctionne pas... Peut-être réécrire le nom du dossier et du fichier? J'ai déjà eu une erreur ou il y avait simplement un 'espace' dans le nom de mon répertoire. Si le nom du répertoire est bien 'security' et le nom du fichier 'ir.model.access.csv' . Et le fichier est bien un fichier .csv? Et non pas un fichier .txt dont on ne voit pas l'extension qui s'appelle en réalité ir.model.access.csv.txt . Ce sont les erreurs que j'ai pu faire par le passé, si jamais tu as du nouveau ou tu trouves la solution, fais m'en part! Je suis curieux de connaître la réponse!

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/01/2009, 06h08
  2. [Joomla!] Effacer des modules suivant la section
    Par lovoo dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 22/08/2008, 01h33
  3. affichage liste de personnel suivant critère
    Par splog dans le forum Excel
    Réponses: 6
    Dernier message: 21/08/2008, 17h55
  4. [MySQL] Affichage de résultats organisé suivant la première lettre
    Par cloridriks dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 27/03/2008, 13h43
  5. Affichage sur mon site suivant les navigateurs
    Par reedbedroom dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 18/02/2008, 09h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo