Un module correspond à un répertoire dans le dossier /usr/lib/python2.7/dist-packages/openerp/addons.
Si le chenim du répertoire addons n'existe pas, consulter le paramètre addons_path du fichier de configuration de OpenERP pour connaître où il se situe dans l'arborescence.
cat /etc/openerp/openerp-server.conf
Un module OpenERP correspond à un ensemble d'éléments (sous-dossiers et fichiers) regroupés dans un dossier localisé par défaut dans le dossier addons.
Ce dossier doit contenir un minimum d'éléments :
Nom du dossier | Description |
---|---|
i18n | Informations de traduction du module(fichiers .po) |
security | Fichiers de contrôle d'accès et les règles |
Nom du dossier | Description |
---|---|
static | C'est le dossier Web du module avec ses sous-dossiers pour l'image du module, les CSS, les fichiers javascript, etc. |
process | workflow (et processus) décrit dans un fichier XML |
report | Fichiers pour les rapports décrits dans des fichiers .sxw |
Nom du ficher | Description |
---|---|
__init__.py | permet le chargement du fichier par OpenERP |
__openerp__.py | Fichier Manifest avec les informations sur le module : nom, version, catégorie, description, fichiers à charger, dépendances, etc. |
fichiers python | code du module (Contrôleurs, Modèles) |
Fichiers XML | décrivant les vues : listes, formulaires, menus, filtres de recherche |
Les fichiers .py sont des scripts écrits en python.
A faire : Créer le squelette du module appelé openacademy dans le dossier addons.
# cd /usr/lib/python2.7/dist-packages/openerp/addons # mkdir openacademy # mkdir openacademy/security
Le rôle du fichier manifest __openerp__.py est de personnaliser la déclaration du module.
A faire : Créez le fichier manifest __openerp__.py du module comme ci-dessous (nom, description, auteur, etc.) dans votre dossier openacademy:
# -*- coding: utf-8 -*- { 'name': "Open Academy", 'summary': """Gérer les formations""", 'description': """ Module Open Academy pour gérer les formations : - parcours de formation - session de formation - inscription """, 'author': "Charles Techer", 'website': "http://www.devodoo.fr", # Categories can be used to filter modules in modules listing # Check https://github.com/odoo/odoo/blob/master/openerp/addons/base/module/module_data.xml # for the full list 'category': 'Test', 'version': '0.1', # any module necessary for this one to work correctly 'depends': ['base'], # always loaded 'data': [ # 'security/ir.model.access.csv', 'templates.xml', ], # only loaded in demonstration mode 'demo': [ 'demo.xml', ], }
# cd .. # chmod 0755 -R openacademy
Les paramètres sont définis de la manière suivante :
Les différents paramètres :
Votre module peut maintenant disponible parmi les autres modules d'OpenERP. Pour cela, il faut mettre à jour la liste des modules.
Pour faire cette mise à jour, il faut activez l'accès aux caractéristiques techniques pour le compte administrateur :