3. L'ERP
Technos
Briques techniques
Language : Python 2.7
Base de données : PostgreSQL
Front End : Backbone JS
L'ORM
"Maison" avec syntaxe proche de Django
classMyClass(Model):
_name='my.class'
my_column=Fields.Char(
string='ColumnName',help="Sometips...",
required=True)
3 / 17
8. Avancées
Gestion de
la sécurité
Gestion de la sécurité
Sécurité intégrée à l'ORM
Double restriction
1. restriction par groupe d'utilisateurs
les "vendeurs" peuvent créer une écriture
comptable
les "comptables" peuvent créer ET supprimer une
écriture comptable
2. restriction contextuelle
Les "vendeurs" peuvent voir toutes les ventes
les "vendeurs" peuvent éditer LEUR vente
8 / 17
9. Avancées
Gestion de
la sécurité
MaJ &
Migrations
Mise à jour et migrations
Petites évolutions
Possibilité d'ajouter / de supprimer des champs
Possibilité de renommer des champs
my_renamed_field=Fields.Integer(
string='MyRenamedField',old_name='my_old_name')
Grosses migrations
module_name/
/migrations/
/8.0.2.0.0/
/pre-migration_script.py
/post-migration_script.py
/8.0.X.0.0/
/...
9 / 17
10. Avancées
Gestion de
la sécurité
MaJ &
Migrations
Autres
outils
Autres outils
Intégration d'un système de jeu de démo
module_name/
/demo/
/product.xml
/partner.xml
Intégration d'unittest pour les tests
Internationalisation de l'outils
#.module:afpy_sample
#:model:ir.model.fields,field_description:afpy_sample.field_res_partner_my_tex
msgid"MyText"
msgstr"MonTexte"
Personnalisation
<fieldname="company_id"groups="base.group_multicompany"/>
10 / 17
12. Outils
Developpeurs
Fonctionnels
Découvrir les modules
Via la liste des modules dans une instance
L'Appstore de l'éditeur
très limité (pas de recherche à facettes)
très "commercial"
contient les modules payants
Odoo Code Search
très complet (scan tout github)
moteur de recherche à facettes
ne contient pas les modules payants
12 / 17
13. Les
acteurs
Editeur
Odoo S.A. (1/2)
09/2004 (v1.0) "TinyERP" première version stable du
logiciel avec client GTK
05/2008 (v5.0)
"TinyERP" devient "OpenERP"
Les scripts de migration deviennent propriétaires
10/2009 (v6.0)
Abandon du client GTK et passage au client web
1ère version "grand publique"
02/2010 1ère levée de 3 M€. (Xavier Niels & Sofinnova)
12/2012 (V7.0)
Refonte majeur de l'interface web
13 / 17
14. Les
acteurs
l'éditeur
Odoo S.A. (2/2)
05/2014 2ème levée de 10 M€. (XAnge / Sofinnova /
SRIW)
06/2014 "OpenERP" devient "Odoo"
09/2014 (V8.0)
Intégration eCommerce (réussite ?) / CMS (échec)
Passage en LGPL
forte adhésion de la communauté
09/2015 (V9.0)
"Community Edition" (Plutôt une version 8.1)
"Enterprise" (payante & propriétaire)
10/2016 (v10.0)
Refonte de la partie MRP
14 / 17
15. Les
acteurs
l'éditeur
La
communauté
Tryton - Un Fork conflictuel
2008
Fork de la version 4.2
maintenu par une fondation (Site Web)
Très peu d'acteurs (Log du Code Source)
L'OCA - L'association
06/2014
création de l'asso (Site Web)
aujourd'hui 300 Membres
100 projets / 1000 Modules communautaires
maintenance d'un fork amical "O.C.B."
Fork amical (non divergent)
= Odoo + correctif de bugs
maintenance d'outils conflictuels (OpenUpgrade)
15 / 17
16. Etat des
lieux
Produit
(+) Mature avec plus de 300 modules officiels
(+) Complété par plus de 1000 modules
communautaires et des milliers de modules custom
(+) De bonnes briques techniques (python,
postgreSQL, appli web, ...)
(-) Des dettes techniques (python 2.7, double API, ...)
L'éditeur
(+) Une politique audacieuce
(+) Des choix stratégiques
(-) Parfois non respectueux du travail communautaire
(- - -) abandonne l'esprit OpenSource dans un modèle
dual Licensing (Modèle "Compiere")
16 / 17