Contenu | Rechercher | Menus

OpenERP

OpenERP est un progiciel de gestion intégré libre, anciennement appelé TinyERP, qui permet de gérer la plupart des aspects fonctionnels d'une entreprise : de la comptabilité à la gestion de production en passant par la gestion des ressources humaines et des projets.

Les modules fonctionnels sont :

  • CRM & SRM ; gestion de la relation client
  • Comptabilité analytique et financière
  • Gestion des stocks
  • Gestion de production (GPAO)
  • Gestion Maintenance Péventive (GMAO)
  • Gestion de projets et des activités de service
  • Norme qualité : ISO 9001 version 2000
  • Gestion des ventes
  • Gestion des achats
  • Marketing
  • Logistique
  • Ressources Humaines

Certains modules sont propres à des besoins spécifiques :

  • Network : Gestion d'un parc informatique
  • Auction : Spécificités pour salles de ventes publiques

Les fonctionnalités techniques :

  • serveur/client, serveur distribué ;
  • workflows éditables ;
  • une base de données orientée objet ;
  • une interface éditable ;
  • rapports personnalisables ;
  • interface XML-RPC.

Installation

OpenERP est divisé en trois partie : un serveur, un client lourd (GTK) et un serveur Web permettant d'accéder à OpenERP à partir d'un navigateur Web.

L'installation d'OpenERP peut être effectuée de deux manières différentes :

  • par les paquets ;
  • à la main.

Installation par les paquets

Pour une installation en production, il est préférable d'utiliser les sources stables et une installation à la main.

Pour installer le client, installez le paquet openerp-client.

Pour installer le serveur, installez le paquet openerp-server qui va installer les dépendances nécessaires et notamment PostgreSQL s'il ne l'était pas.

  • Depuis Ubuntu 11.04 on peut installer le serveur web depuis les dépots, installez le paquet openerp-web . Pour les versions antérieures regardez les explications plus bas.
  • Depuis Ubuntu 13.04, l'installation d'Openerp 7 est beaucoup plus simple.

Ajoutez ce dépôt : deb http://nightly.openerp.com/7.0/nightly/deb/ ./

Ensuite, openerp 7 doit apparaître dans votre logithèque, il suffit d'installer le paquet (ce qui installe la partie serveur) puis vous pourrez vous connecter via Firefox (par exemple) à l'adresse localhost:8069

A confirmer : Pour 14.04, il manquerait :

# Creation de la base de donnee
sudo su - postgres
 createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt openerp
 exit
# Ajout des lien symbolique pour difference de version de python
sudo ln -s /usr/bin/python2.7 /usr/bin/python2.6
sudo ln -s /usr/lib/python2.6/dist-packages/openerp /usr/lib/python2.7/dist-packages/openerp
#et relance du serveur pour prise en compte
sudo /etc/init.d/openerp start

Installation manuelle

Pré-requis

Pour être sûr que l'installation fonctionne, il faut installer les dépendances requises par OpenERP. Tout d'abord, il faut rechargez la liste des paquets puis installez les paquets nécessaires.

Pour commencer, il faut récupérer les sources d'OpenERP (client + serveur + serveur Web)

Deux manières de récupérer les sources :

La procédure d'installation est la même, que vous ayez la version stable ou la version en développement.

Installation du serveur

Si vous avez téléchargé les sources stables depuis le site officiel, il faut extraire l'archive openerp-server-X-Y.tar.gz.

Maintenant, pour savoir si le serveur est fonctionnel, il suffit d'aller dans le répertoire bin du serveur puis de lancer cette commande :

python ./openerp-server.py

Si tout s'est bien passé, en tapant openerp-server dans le terminal, vous obtenez ceci :

[2009-05-16 19:31:16,607] INFO:server:version - 5.0.0 
[2009-05-16 19:31:16,607] INFO:server:addons_path - /usr/lib/openerp-server/addons 
[2009-05-16 19:31:16,608] INFO:server:database hostname - localhost 
[2009-05-16 19:31:16,608] INFO:server:database port - 5432 
[2009-05-16 19:31:16,609] INFO:server:database user – « votre login »
[2009-05-16 19:31:16,609] INFO:objects:initialising distributed objects services 
[2009-05-16 19:31:18,139] INFO:web-services:starting XML-RPC services, port 8069 
[2009-05-16 19:31:18,141] INFO:web-services:starting NET-RPC service, port 8070 
[2009-05-16 19:31:18,142] INFO:web-services:the server is running, waiting for connections...

OpenERP Server fonctionne.

Installation du client lourd

Si vous avez téléchargé les sources stables depuis le site officiel, il faut extraire l'archive openerp-client-X-Y.tar.gz.

Maintenant, pour savoir si le client est fonctionnel, il suffit d'aller dans le répertoire bin du client puis de lancer cette commande :

python ./openerp-client.py

Si tout s'est bien passé, une fenêtre GTK devrait s'ouvrir.

Installation du serveur Web

Si vous avez téléchargé les sources stables depuis le site officiel, il faut extraire l'archive openerp-web-X-Y.tar.gz.

Maintenant, pour savoir si le serveur Web est fonctionnel, il suffit d'aller dans le répertoire du serveur Web puis de lancer cette commande :

python ./openerp-web.py

Si tout s'est bien passé, vous devriez avoir ces lignes dans votre terminal :

[11/Nov/2010:18:18:16] CONFIG /home/quentin/Developpement/OpenERP/launchpad_6.0/web/doc/openerp-web.cfg
[11/Nov/2010:18:18:16] ENGINE Bus STARTING
[11/Nov/2010:18:18:16] ENGINE Started monitor thread '_TimeoutMonitor'.
[11/Nov/2010:18:18:16] ENGINE Started monitor thread 'Autoreloader'.
[11/Nov/2010:18:18:17] ENGINE Serving on 0.0.0.0:8080
[11/Nov/2010:18:18:17] ENGINE Bus STARTED

Le serveur Web fonctionne. Vous pouvez y accéder en tapant http://localhost:8080 dans la barre d'adresse de votre navigateur.

Configuration

Cette partie de configuration n'est nécessaire que dans le cas d'une installation manuelle.

C'est bien beau, OpenERP est installé, cependant, vous ne pouvez pas créer de base de données, ce qui est embêtant.

OpenERP se basant sur le SGBD PostgreSQL, il faut donc installer PostgreSQL si ce n'est déjà fait.

Il faut ensuite créer un utilisateur système qui sera l'utilisateur qui lancera OpenERP.

En développement, il est conseillé de créer un utilisateur du même nom que votre utilisateur de la machine.

En production, il est conseillé de créer un compte utilisateur et un compte PostgreSQL spécifique à OpenERP.

En développement

Créer un utilisateur PostgreSQL.

Si vous lancez openerp-client ou http://votre_serveur:8080 dans votre navigateur et que vous obtenez ce message :

Couldn't connect to server

Il vous faut relancer le serveur avec cette commande :

./openerp-server.py --db_user=openerp --db_password=mot_de_passe_psql_utilisateur_openerp

En production

Pour qu'OpenERP puisse être lancé avec l'utilisateur openerp, il faut le créer dans le système.

Cette commande va créer le dossier /home/openerp où seront installé les fichiers d'OpenERP.

Ensuite, il faut créer un utilisateur PostgreSQL qui aura le droit de créer de nouvelles bases de données.

Si vous donnez un mot de passe à l'utilsateur openerp dans PostgreSQL, notez-le précieusement, il vous sera utile plus tard !

Si vous lancez openerp-client ou http://votre_serveur:8080 dans votre navigateur et que vous obtenez ce message :

Couldn't connect to server

Il vous faut relancer le serveur avec cette commande :

./openerp-server.py --db_user=openerp --db_password=mot_de_passe_openerp

Si vous lancez alors openerp-client ou http://localhost:8080 dans votre navigateur, vous devriez avoir le message :

Pas de base de données trouvée, vous devez en créer une

Cliquez alors sur Annuler, puis dans le menu sur Fichier → Bases de données → Nouvelle base de données sur le client GTK ou Base de données sur votre navigateur.

Dans le premier champ Super admin password:, si vous n'avez pas donné de fichier de configuration spécifique au serveur OpenERP, le mot de passe est 'admin'. Sinon, c'est le mot de passe défini dans la variable 'admin_password' du fichier de configuration du serveur.

Ce mot de passe super admin n'a rien à voir avec le mot de passe de l'utilisateur openerp dans Postgresql !

Dans le champ Mot de passe administrateur, vous pouvez mettre le mot de passe que vous voulez, ce sera le mot de passe de l'utilisateur Administrateur dans la base de données que vous venez de créer. Le compte qui vous permettra de configurer OpenERP aux petits oignons.

Il devrait alors être possible d'ouvrir la base de données créée et de finir sa configuration.

Voir l'article dans le forum

Environnement de production

Dans un environnement de production, on aimerait qu'OpenERP se lance automatiquement au démarrage de la machine.

Pour cela, il faut donc créer différents scripts de lancement.

Pour commencer, si ce n'est pas déjà fait, nous allons déplacer les sources des différents serveurs (OpenERP et Web) dans le /home/openerp

sudo mv openerp-server-X-Y /home/openerp
sudo mv openerp-web-X-Y /home/openerp

Ensuite, pour faciliter les mises à jour, nous allons créer des liens symboliques. Cela permettra de remplacer les sources sans avoir à modifier les scripts de démarrage.

sudo ln -s /home/openerp/openerp-server-X-Y /home/openerp/server
sudo ln -s /home/openerp/openerp-web-X-Y /home/openerp/web

Nous allons ensuite créer un dossier qui contiendra les logs du serveur OpenERP :

sudo mkdir -p /var/log/openerp/web; sudo chown -R openerp /var/log/openerp

Mise en place des différents scripts

Voici les différents fichiers à mettre en place : http://forum.ubuntu-fr.org/viewtopic.php?pid=3936858#p3936858

Mise en place des démons au démarrage

Pour que le serveur et le client web soient fonctionnels lors d'un redémarrage, il suffit de taper ces commandes :

sudo update-rc.d openerp-server defaults 99 
sudo update-rc.d openerp-web defaults 99 

Problèmes connus

Installation du serveur (v6.1 via paquet) sous Ubuntu 11.10

Toute l'installation peut se passer correctement, mais, dans les logs, il se peut que vous ayez un problème de connexion BDD.

En fait, dans le fichier de configuration de postgre (pg_hba.conf), il faut bien autoriser votre utilisateur pour votre base de données, mais il faut surtout ne pas oublier de l'autoriser pour la "template1" (qui vous permettra de sélectionner la base de données adéquate).

Installation du serveur sous Ubuntu 9.04 (Jaunty Jackalope)

Alternativement, il existe un script pour Ubuntu 9.04 : http://opensourceconsulting.wordpress.com/2009/06/29/openerp-server-5-0-openerp-web-5-0-1-installation-script-on-ubuntu-9-0-4-sh/

Commencer par installer les paquets openerp-server et python2.5.

Ensuite, lancer openerp-server depuis un terminal :

'openerp-server'

Vous obtenez ça :

ERROR: Import xpath module 
ERROR: Try to install the old python-xml package

Openerp5 utilise « python-xml », qui se trouve dans python2.5 (par exemple) et Ubuntu 9.04 utilise Python2.6 qui n'a pas ce fichier « python-xml ».

Depuis un terminal, vous devez :

Indiquer à openerp-server d'utiliser « python2.5 » en éditant le fichier /usr/bin/openerp-server . Remplacez

exec /usr/bin/python ./openerp-server.py

par

exec /usr/bin/python2.5 ./openerp-server.py

Créer un lien symbolique :

cd /usr/lib/python2.5/site-packages/oldxml/_xmlplus/utils/
sudo ln -s /usr/lib/python2.6/dist-packages/oldxml/_xmlplus//utils/boolean.so boolean.so

Si le dossier _xmlplus/utils n'existe pas, essayez de copier boolean.so au bon endroit :

cp /usr/lib/python2.6/dist-packages/oldxml/_xmlplus/utils/boolean.so /usr/lib/python2.5/site-packages/oldxml/_xmlplus/utils

Si tout s'est bien passé, en tapant openerp-server dans le terminal, vous obtenez ça :

[2009-05-16 19:31:16,607] INFO:server:version - 5.0.0 
[2009-05-16 19:31:16,607] INFO:server:addons_path - /usr/lib/openerp-server/addons 
[2009-05-16 19:31:16,608] INFO:server:database hostname - localhost 
[2009-05-16 19:31:16,608] INFO:server:database port - 5432 
[2009-05-16 19:31:16,609] INFO:server:database user – « votre login »
[2009-05-16 19:31:16,609] INFO:objects:initialising distributed objects services 
[2009-05-16 19:31:18,139] INFO:web-services:starting XML-RPC services, port 8069 
[2009-05-16 19:31:18,141] INFO:web-services:starting NET-RPC service, port 8070 
[2009-05-16 19:31:18,142] INFO:web-services:the server is running, waiting for connections...

Openerp-server fonctionne.

Bases de données PostgreSQL

Avec une Ubuntu 9.04 française, il y a quelques problèmes d'installation et il n'est pas possible de créer de base openerp.

Il y a ici un bonne procédure concernant les problèmes de compatibilité python : doc opensourceconsulting

Une petite analyse des logs indique un problème de locale du coté de postgressql.

tail -f /var/log/openerp.log /var/log/postgresql/postgresql-8.3-main.log

Pour résoudre ce problème il faut faire passer postgresql en UTF8: (attention ça efface la base de données existante)

/etc/init.d/postgresql-8.3 restart
rm -rf /var/lib/postgresql/8.3/main/*
su - postgres

Tapez "entrée". L'administration se fait, au départ, avec l'utilisateur postgres, il ne possède pas de mot de passe: postgresql

/usr/lib/postgresql/8.3/bin/initdb --locale=fr_FR.UTF-8 -D /var/lib/postgresql/8.3/main/
cd /var/lib/postgresql/8.3/main
ln -s  /etc/postgresql-common/root.crt root.crt
ln -s  /etc/ssl/certs/ssl-cert-snakeoil.pem server.crt
ln -s /etc/ssl/private/ssl-cert-snakeoil.key server.key
/etc/init.d/postgresql-8.3 restart
tail -f /var/log/postgresql/postgresql-8.3-main.log

Vérifiez aussi /etc/default/locale→ remplacer "LANG=fr_FR" par "LANG=fr_FR.UTF-8"

dpkg-reconfigure locales

Effectuez un reboot.

N' utilisez la solution super-user dans postegresql qu' à des fins de test

Pour que la connexion du client se fasse, il faut créer un super-utilisateur dans postegresql avec le même nom que votre identifiant sous ubuntu:

 sudo su postgres

puis votre MDP

 createuser votre_identifiant_ubuntu -P

et un mot de passe (openerp ou autre). A la question

 make votre_identifiant_ubuntu as superuser 

répondre Y (yes).

Information issue de http://www.openerp.com/forum/topic13328.html?sid=37d92478f947a3abc3493525b3e52a01

Et consultez la doc: Créer un utilisateur PostgreSQL.

FIXME : — apparemment la partie ci dessous n'est pas nécessaire lors de l'installation —

Éditez ensuite le fichier /etc/default/tinyerp-server pour y mettre le mot de passe de la base de données que vous venez de définir :

# Specify the database password (Default: not set).
DATABASE_PASSWORD="votre_mot_de_passe"

Les modules

Par défaut, OpenERP contient tous les modules requis pour une gestion d'entreprise standard. Vous pouvez télécharger d'autres modules sur Launchpad.

Retours d'expérience

Document Expérience de déploiements OpenERP dans des entreprises françaises écrite par Alexis de Lattre

Voir la discussion "OpenERP - Vos réactions / expériences " sur le forum ubuntu-fr.

Voir aussi



Le contenu de ce wiki est sous licence : CC BY-SA v3.0