SlideShare une entreprise Scribd logo
1  sur  78
Télécharger pour lire hors ligne
Promotion 2013/2014
PROJET DE FIN D’ETUDE
Présenté à la faculté des sciences technique Hassan I
Licence Professionnel en Information
Spécialité : Conception et développement d’application
Analyse de Besoin, Adaptation et Intégration d’OPENERP pour la gestion
Des Grossistes Répartiteurs des Médicaments
Réalisé par :
ABAI Oussama
JEFFAR Khaoula
NOUMANI Zakaria
LIALICHI Bassima
RHZAOUI Said
Encadrer Par :
Mr BENGHALEM
1
Remerciements
Le présent rapport reflète le fruit des efforts conjugués de plusieurs personnes. Il est alors agréable
d’exprimer notre reconnaissance auprès de toutes ces personnes, dont l’intervention au cours de ce
projet, a favorisé son aboutissement.
Aussi on tient à rendre grâce à nos parents, nos familles et nos amis qui, avec leur soutien et
encouragement, on a pu arriver à terme de ce travail.
On souhaite remercier aussi les membre de la communauté OpenERP Maroc , pour leur soutien et aide
qui nous a été d’une aide très utile durant la période de ce travail .
On remercie particulièrement Mr BENGHALEM pour son encadrement, son soutien, ainsi que pour ses
conseils instructifs durant toute la période de ce travail.
Nos remerciements aussi à l’ensemble des professeurs de IT-Learning pour les efforts fournis pour
notre bonne formation.
Que les membres de jury trouvent ici l’expression de nos reconnaissances pour avoir accepté de juger
notre travail. Que tous ceux et celles qui ont contribué de près ou de loin à l’accomplissement de ce
travail trouvent l’expression de nos remerciements les plus chaleureux.
2
Sommaire :
PARTIE I:
1 Historique des ERP..................................................................................................................................5
1.1 Un éternité reprise ..........................................................................................................................5
1.2 Actuellement, les ERP......................................................................................................................6
2 Le marché des ERP ..................................................................................................................................8
3 Etude comparative des progiciels de gestion intégrée (PGI)...................................................................10
3.1 Les progiciels de gestion intégrée ..................................................................................................10
3.2 Pourquoi un PGI Open Source ?.....................................................................................................10
3.3 Les critères d’évaluation................................................................................................................10
4 les avantages et les inconvénients d'un ERP ..........................................................................................15
4.1 Avantages d’ERP :..........................................................................................................................15
4.2 Inconvénient des ERP :................................................................................................................15
PARTIE II :
1. Cadre général du projet ........................................................................................................................17
1.1 Présentation générale des"grossistes-répartiteurs" : .....................................................................17
1.2 Problématique :.............................................................................................................................18
1.3 Objectifs du projet.........................................................................................................................18
1.4 Elaboration de Cahier des charges fonctionnel :.............................................................................19
2. Planification du projet :.........................................................................................................................20
3. Etude fonctionnelle :.............................................................................................................................23
3.1 Etude de l’existant :.......................................................................................................................23
3.2 Le système fonctionnel :................................................................................................................23
3.3 Diagramme de contexte :...............................................................................................................23
4. Etude technique :..................................................................................................................................27
4.1 Présentation générale de l’open source.........................................................................................27
4.1 OpenERP .......................................................................................................................................28
5.1 Architecture technique de l’OpenERP : ..........................................................................................28
6.1 Architecture modulaire d’OpenERP ...............................................................................................29
7.1 Modèle vue contrôleur..................................................................................................................30
3
8.1 Gestion électronique des processus métier (workflow)..................................................................31
9.1 Les services Web ...........................................................................................................................32
5. Conception détaillé du projet................................................................................................................33
5.1 Cas d’utilisation.............................................................................................................................33
5.2 Les processus métiers....................................................................................................................37
5.3 Diagramme de séquence ...............................................................................................................38
5.4 Diagramme de classe.....................................................................................................................40
PARTIE III :
6. Technologies mises en œuvre ...............................................................................................................41
6.1 Ubuntu..........................................................................................................................................41
6.2 PostgreSQL....................................................................................................................................42
6.3 OpenERP .......................................................................................................................................43
6.4 Python...........................................................................................................................................48
6.5 XML...............................................................................................................................................50
PARTIE IV :
7 Installation des Modules : .....................................................................................................................52
7.1 Configurer les données de la comptabilité : ...................................................................................53
7.2 Règlement de l’option de comptabilité :........................................................................................54
7.3 Installation Le module du Stock : ...................................................................................................55
7.4 Installation le module d’alerte : .....................................................................................................56
7.5 Installation le limiteur du crédit :...................................................................................................57
7.6 Gestion des ventes : ......................................................................................................................58
8 Gestion des ventes Selon le Cahier des charges :...............................................................................66
4
Partie I : Introduction général d'Open ERP
- Historique des ERP
- Le marché des ERP
- les critères d’évaluation d’un PGI
-les avantages et les inconvénients
Dans ce chapitre, nous allons faire
l’introduction d’Open ERP : Les historiques,
le Marché des ERP,les critères d’évaluation
d’un PGI, les avantages et les inconvénients
d’un ERP.
5
1 Historique des ERP
1.1 Une éternité reprise
Durant ces trente dernières années, l'informatique de gestion a subi des bouleversements considérables.
Les avancées technologiques du traitement de l’information ont eu des conséquences capitales sur le
rôle de l'outil informatique.
Si les premières applications ont permis d’automatiser les activités opérationnelles des organisations
(gestion de production, gestion commerciale et financière, ressources humaines), aujourd’hui les
systèmes d’information prennent en charge des niveaux de gestion de plus en plus stratégiques.
Les innovations technologiques ont fait évoluer les architectures informatiques...
 les années 60-70 et le mainframe (informatique d'entreprise) : il ne s'agit à cette époque que de
gérer des volumes gigantesques de données ; les applications de gestion automatisent les
processus opérationnels et répétitifs ; le marché des systèmes informatiques est dominé par
quelques grands constructeurs ; les gros systèmes sont propriétaires et centralisent la puissance
de traitement.
 les années 80 et les mini systèmes (informatique de département) : le marché de l'informatique
s'ouvre aux PME ; l'ère des minis permet également à un grand nombre d'utilisateurs d'accéder
aux données aux travers d'applications couvrant des besoins plus spécifiques ; l'utilisateur
dispose d’une interface texte pour l’interaction avec le système (terminaux passifs).
 les années 90 et le client serveur (informatique individuelle) : c'est le plein essor des ordinateurs
personnels et de la bureautique, et l'explosion des réseaux et des télécommunications ; le
partage de l'information devient le défi majeur ; les applications bureautiques disponibles
(traitement de texte et tableur) répondent à des besoins de traitement de l’information jusqu’à
présent non pris en compte ; les terminaux passifs sont peu à peu remplacés par des micro-
ordinateurs capables de les émuler ; au-delà du réseau local, les applications client-serveur
donnent l’occasion de répartir les traitements entre les machines les plus adaptées : les
applications bureautiques sur les postes de travail et les applications critiques (ainsi que les
bases de données) sur les serveurs ; la connexion entre le réseau local et le site central
s’effectue par des liaisons téléinformatiques proposées par l’opérateur institutionnel ; le micro-
ordinateur devient nomade grâce aux portables, capable ainsi de se connecter au réseau local
ou à distance au système informatique de l’entreprise.
6
 les années 2000 aujourd’hui le poste de travail, nomade ou fixe, est connecté au réseau local de
l’organisation mais il est aussi ouvert sur l’extérieur grâce à l’Internet ; la communication entre les
ordinateurs s'effectue grâce à un ensemble de protocoles normalisés (TCP/IP) ; les technologies
de l’Internet deviennent des normes pour la mise en place tant des systèmes informatiques
d’entreprise (intranet) que des systèmes informatiques interconnectés avec les partenaires
(extranet) ; les applications métier obéissent au standard du web (HTTP, HTML) ; le poste de
travail, équipé seulement d’un navigateur, peut accéder par le réseau à l’ensemble des
applications (client léger) ; le système d’information de l’entreprise est accessible depuis un poste
de travail banalisé mais également depuis de nouveaux équipements comme le téléphone
mobile.
1.2 Actuellement, les ERP
Le terme ERP provient du nom des méthodes de planification des besoins en composants suivant
l'intégration de plus en plus poussée des fonctions de gestion de l'entreprise. Dans les années 1960,
Joseph Orlicky a étudié le programme de production de Toyota et a développé le Material Requirements
Planning (MRP), puis Oliver Wight et George Plossl ont développé MRP into manufacturing resource
planning (MRP2). On peut décomposer l'historique en trois phases :
 MRP0, en anglais Material Requirements Planning Zero (littéralement, « planification des besoins
en matières 0 ») : méthode de calcul des besoins matière, mise au point en 1965
 MRP1, en anglais Material Requirements Planning One : première application industrielle de la
gestion intégrée des flux de production, mise au point en 1971 ;
 MRP2, en anglais Manufacturing Resources Planning Two (litt. « planification des ressources
pour la fabrication 2 ») : en plus du calcul des besoins nets en matières premières et
composants, effectue une planification des lancements en tenant compte des capacités des
ressources par période ; mise au point en 1979.
À partir de 1990 environ, le MRP s'est progressivement étendu à l'ensemble des fonctions de
l'entreprise, pour donner l'ERP (E comme entreprise). Dans le cadre du passage informatique à l'an 2000
et du passage à l'euro (dans la zone euro), les progiciels de gestion intégrés ont été une solution pour
remplacer les systèmes informatiques vieillissants qui ne pouvaient pas être convertis pour des raisons
d'obsolescence technique. C'est ce qui explique l'expansion considérable de ces logiciels dans les
années 1990.
7
Les ERP sont des applications dont le but est de coordonner l'ensemble des activités d'une entreprise
(activités dites verticales telles que la production, l'approvisionnement ou bien horizontales comme le
marketing, les forces de vente, la gestion des ressources humaines, etc.) autour d'un même système
d'information. Ils offrent à l'entreprise, une solution globale et transversale.
Le principe fondateur d'un ERP est de construire des applications informatiques (paie, comptabilité,
gestion de stocks…) de manière modulaire (modules applicatifs indépendants entre eux généralement
signés par le même éditeur) tout en partageant une base de données unique et commune.
Figure 1: ERP evolution
2000
1990
1980
1970
1960
Extended ERP
Enterprise Resource Planning(ERP)
Manufacturing Resources Planning (MRP II)
Material Requirements Planning (MRP)
Inventory Control Packages
8
2 Le marché des ERP
Aujourd'hui, le marché des ERP est considéré comme mature. La question de la sélection ne se fait donc
pas sur des critères de performance des logiciels mais plutôt selon les besoins spécifiques à l'entreprise.
Le marché des ERP compte des centaines de produits différents à l'échelle mondiale, ce qui en fait un
marché très complexe, dans lequel seuls les experts naviguent aisément. Pour simplifier les choses, on
peut segmenter le marché en trois volets:
 Au niveau un, où l'on trouve les systèmes les plus puissants mais aussi les plus coûteux,
s'affrontent une poignée de produits très complets, qui sont offerts à l'échelle mondiale
par quelques géants spécialisés. Ces systèmes sont surtout pour la grande entreprise,
mais on les implante maintenant avec succès dans de nombreuses organisations de
moyenne taille. Il faut prévoir un investissement d'au moins 600 000 $, et souvent
beaucoup plus, selon le nombre de modules et d'utilisateurs ainsi que la complexité des
processus à automatiser.
 Au niveau deux, l'on trouve des ERP un peu moins puissants et nettement moins
coûteux, qui sont offerts par de nombreux éditeurs à l'échelle mondiale, la plupart du
temps avec l'aide de partenaires locaux qui se chargent de la vente, de la mise en place
ainsi que de l'assistance à la clientèle. Ces logiciels s'adressent surtout aux entreprises de
moyenne taille ou aux filiales des grandes sociétés. De nombreuses organisations plus
petites les adoptent maintenant aussi, ce qui permet à celles-ci de concurrencer les plus
grandes entreprises et de soutenir leur croissance. Au niveau deux, il faut prévoir un
investissement de 100 000 $ à 600 000 $ environ.
 Au niveau trois, l'on trouve un grand nombre de petits logiciels, qui méritent ou non
l'appellation ERP mais qui offrent néanmoins aux petites entreprises des fonctions utiles,
à des coûts raisonnables. Le prix de ces logiciels varie énormément; à ce niveau, un
système complet peut coûter entre 5 000 $ et 100 000 $, selon le logiciel et l'envergure
du système.
Selon des études annuelles menées par des cabinets de conseil et d'études permettent
d'observer les parts de marché des grands éditeurs d'ERP propriétaires mondialement.
9
Le Marché mondial des ERP :
Le shéma ci-dessous représente la répartition des parts de marché des principaux ERP en 2004
au niveau mondial. SAP dominait avec 40% des parts de marché.
Oracle qui avait racheté Peoplesoft détenait donc 22% des parts de marché.
Sage était bien placé en particulier avec une clientèle de PME .
10
3 Etude comparative des progiciels de gestion intégrée (PGI)
Dans ce chapitre, on va évaluer les solutions de gestion intégrée qui existent dans le marché, afin de
choisir un PGI propriétaire ou bien Open Source, alors on va faire une étude comparative basant sur une
norme ISO, le PGI choisi doit être adéquat aux besoins de l’entreprise.
3.1 Les progiciels de gestion intégrée
Les entreprises d’aujourd’hui doivent rationaliser leur pilotage vu l’évolution progressive et la
compétitivité féroce du marché. Pour ce faire, l’utilisation d’un progiciel de gestion intégrée est une
nécessité car il centralise, présente les données de façon pertinente et affecte les bons processus aux
bons acteurs.
L'acronyme PGI signifie "Progiciel de Gestion Intégrée" traduit en anglais par Enterprise Resource
Planning (ERP). ERP est le terme le plus couramment utilisé. Un ERP est un progiciel qui assure la
gestion automatique de l'ensemble des processus d'une entreprise comme la gestion des ressources
humaines, la gestion comptable, la gestion des ventes, l'approvisionnement, la production ou encore du
e-commerce. [Wiki, 2012]. Le principe fondateur d'un ERP est l’utilisation des applications informatiques
correspondantes aux divers processus métiers de manière modulaire, en partageant une base de
données unique et commune au sens logique. L'autre principe, qui caractérise un ERP, est l'usage de ce
qu'on appelle un moteur de Workflow. Il permet d’acheminer une donnée qui est enregistrée dans le
système d'information(SI), vers les autres modules qui en ont besoin.
3.2 Pourquoi un PGI Open Source ?
D'une manière générale, en utilisant un produit open source, on peut s'attendre à des économies de
licence en installant un ERP open source. En effet, l'ERP étant un progiciel complexe, les coûts
d'intégration et de maintenance représente le coût total de possession de l'ERP. Ainsi, l'économie d'une
licence propriétaire représenterait entre 25% et 50% du coût total d’implémentation d’un ERP.
Par ailleurs, les solutions open source arrivent à leur maturité. Ce qui fait, les petites et moyennes
entreprises (PME) et les très petites entreprises (TPE) peuvent disposer d'un outil de gestion complet au
meilleur coût en leur apportant rapidement un vrai bénéfice en termes de compétitivité.
3.3 Les critères d’évaluation
Afin d’évaluer la qualité d’un logiciel, nous allons nous référer à la norme ISO 9126, "Technologies de
l'Information : Qualités des produits logiciels", qui décrit une série de caractéristiques qualité d’un produit
logiciel qui peuvent être utilisées pour spécifier les exigences fonctionnelles et non fonctionnelles des
utilisateurs. Elle est composée de six facteurs principaux suivant :
11
Capacité fonctionnelle : Est-ce que le logiciel répond aux besoins fonctionnels exprimés ?
C’est un facteur qui mesure l’adéquation des fonctionnalités du logiciel aux besoins prescrits des
utilisateurs et sa possibilité d’interaction avec d’autres systèmes.
Fiabilité : Est-ce que le logiciel maintient son niveau de service dans des conditions précises et pendant
une période déterminée ?
C’est l'aptitude du logiciel à maintenir son niveau de service et de fonctionnement pendant une période
déterminée.
Facilité d'utilisation : Est-ce que le logiciel requiert peu d’effort à l’utilisation ?
Ce facteur évalue le degré d’utilisation du logiciel par les utilisateurs finaux. Ce degré révèle l’effort
requis pour exploiter et comprendre les concepts logiques et fonctionnels.
Rendement / Efficacité : Est-ce que le logiciel requiert un dimensionnement rentable et proportionné de
la plate-forme d’hébergement en regard des autres exigences ?
Ce facteur mesure le rapport existant entre le niveau de service d'un logiciel, à savoir le temps de
réponse de l’exécution des requêtes, et la quantité des ressources utilisées.
Maintenabilité : Est-ce que le logiciel requiert peu d’effort à son évolution par rapport aux nouveaux
besoins ?
C’est l'effort nécessaire pour faire des modifications de données et des tests, ce facteur permet en plus
de mesurer la stabilité du logiciel.
Portabilité : ce facteur évalue la capacité du logiciel de fonctionner dans différents environnements et sa
facilité de migration d’un système à un autre.
En se basant sur les facteurs d’évaluation précédents, nous allons entamer une étude comparative entre
les logiciels Open source déjà cité. Pour ce faire, nous allons détailler les fonctionnalités métiers offertes
par chaque ERP, puis nous allons évaluer les ERP selon chaque facteur pour enfin choisir le plus
adéquat pour nos propres besoins. Notant que l’étude se base sur une échelle de six niveaux suivant :
 0 : pour mentionner l’inexistence de la fonction.
 1 : niveau faible.
 2 : niveau passable.
 3 : niveau moyen.
 4 : niveau bon.
 5: niveau excellent.
3.3.1 Profil par capacité fonctionnelle
L’échelle fonctionnelle représente un facteur principal dans l’évaluation des différents ERPs choisis vu
qu’elle permet de comparer les modules de gestion offerts par le progiciel et les modules
25
précisés dans le cahier de charge de la société. Pour évaluer cette échelle, nous allons nous référer à
une étude faite par Smile, le premier intégrateur Européen de l’Open Source.
ERPfonction Achats Ventes Comptabilité CRM RH Paies Projet
OpenERP 4 4 4 4 4 1 4
ERP5 4 4 5 4 4 4 0
Admepiere 4 4 4 3 0 0 3
CompiereGPL 4 4 5 3 0 0 3
Tableau 1:Evaluation des capacités fonctionnelles des ERPs choisis
12
OpenERP et ERP5 englobe la majorité des fonctions du notre cahier de charge Sauf que ERP5 ne
possède pas un module de gestion du projet chose qui présente un avantage pour OpenERP. En
contrepartie, ERP5 maitrise le module de la gestion de paie plus qu’OpenERP. Or, la communauté
marocaine de ce dernier a pu développer un module de gestion de paie qui tient compte des exigences
de la paie marocaine.
3.3.2 Profil par facteur de fiabilité et facilité d’utilisation
Pour la fiabilité, à part Compiere qui est très robuste, aucun des autres outils n’offre un degré de fiabilité
parfait. La gestion des exceptions et des situations de blocage reste en somme peu satisfaisante en
tenant en considération les exigences des utilisateurs. Cette faiblesse est due principalement au manque
de maturité des outils open source par rapport au marché.
Par ailleurs, la facilité d’utilisation est un point fort d’OpenERP. En effet, l’apprentissage d’OpenERP est
assez aisé, car il utilise une logique simple, intuitive et généralisée, contrairement aux autres ERPs.
Cette facilité d’utilisation est un point déterminant, car il est très sollicité à la fois par les utilisateurs
simples et expérimentés. L’absence d’un manuel d’utilisateur pour Adempiere, Compiere et ERP5 est
décevante pour quiconque veuille les tester ou les utiliser. Ceci n’est pas bien entendu le cas
d’OpenERP. Ce tableau résume l’évaluation de ces deux facteurs :
Nom ERP  fonction Fiabilité Facilite de l’utilisation
OpenERP 3 4
ERP5 3 3
Adempiere 3 3
CompiereGPL 4 3
Tableau 2:Evaluation des facteurs de fiabilité et de facilite de l’utilisation
3.3.3 Profil par facteur de rendement
Afin de détailler ce facteur, on doit tout d’abord déterminer les ressources nécessaires pour le bon
fonctionnement du progiciel puis son rendement.
L’architecture d’Adempiere est basée sur une JVM (Java Virtuelle Machine) et un serveur d’application
JBOSS. Les transactions sont rapides tant que la puissance du son serveur augmente, donc le
rendement dépend de cette puissance. Tandis qu’afin de faire tourner Compiere, il a besoin d’un serveur
dédié à lui, de 2GO de RAM et d’un processeur puissant pour offrir le même service ce qui explique son
faible rendement.
13
Pour ERP5, il ne demande pas de ressources énormes, un seul serveur de base est suffisant pour
fournir des transactions rapides ce qui prouve son excellent rendement. Alors qu’OpenERP même s’il ne
demande d’un serveur de base, les transactions sont lentes sur machine distante et rapides en local
Nom ERP  fonction Rendement
OpenERP 3
ERP5 5
Adempiere 3
CompiereGPL 3
Tableau 3:Evaluation du facteur de rendement des ERPs choisis.
Selon ce facteur, Adempiere, Compiere et OpenERP sont à égalité. Si OpenERP permet une économie
très remarquable en termes de ressources matérielles, les transactions effectuées par Adempiere ou
Compiere sont plus rapides quand il s’agit d’utiliser des machines distantes. ERP5 est nettement plus
rentable que les autres PGI ceci est dû au fait qu’il ne demande pas de ressources énormes pour faire
tourner plusieurs postes clients.
3.3.4 Profil par facteur de Maintenabilité
Les ERPs choisis sont tous développés selon l’approche orientée objet. Cette approche offre un accès
rapide aux données et leurs dépendances, et par la suite une facilité de modification de données. En
effet, les données dépendantes sont structurées dans un objet qui possède des méthodes qui lui donne
la possibilité d’interagir avec les autres objets, par la suite avec d’autres données.
Par ailleurs, OpenERP est le plus stable. En effet, une nouvelle version stable est disponible chaque 6 à
8 mois.
Nom ERP  fonction Maintenabilité
OpenERP 4
ERP5 2
Adempiere 4
CompiereGPL 4
Tableau 5:Evaluation de facteur de maintenabilité des ERPs choisis
3.3.5 Profil par facteur de portabilité
Pour évaluer ce facteur il suffit de présenter les différents environnements sur lesquels les différents
ERPs choisis peuvent fonctionner.
Adempiere peut tourner sur tous les systèmes d’exploitation et utilise les bases de données PostgreSQL
et Oracle. OpenERP, quant à lui, supporte les systèmes d’exploitation Windows et Linux et PostgreSQL
pour sa base de données. Pour Compiere peut fonctionner sur tous les systèmes d’exploitation et fait
appel à une base de données Oracle. Tandis pour ERP5, il est possible de l'installer sur RedHat mais
aucune version Windows ne nous semble disponible selon mes recherches webographies.
14
Nom ERP  fonction Potabilité
OpenERP 3
ERP5 5
Adempiere 3
CompiereGPL 3
Tableau 5: Evaluation de facteur de portabilité des ERPs choisis
3.3.6 Profil par type de l’entreprise
Si on considère les aptitudes fonctionnelles particulières des ERP évalués ainsi que leurs autres
caractéristiques comme le degré d'ouverture de l'éditeur, la qualité de finition, la complexité ou simplicité
des extensions, on peut déduire un profil type d'utilisation, selon le secteur d'activité, mais aussi selon la
taille et le chiffre d'affaire de la société
Nom
ERP
Secteur Taille d’entreprise Chiffre d’affaire par
million d’euros
Distribution Service Industrie X<5 5<x<10 10<x<50 50<x<50 X>250 X<5M 5M<X<500M
OpenERP
4 5 5 3 4 5 5 4 4 5
ERP5
4 4 4 3 4 5 4 4 4 4
Adempiere
5 3 3 1 2 5 5 3 4 3
Compiere
5 4 3 2 2 5 5 5 5 3
Tableau 6:Evaluation par type de l’entreprise des ERPs choisis
On Remarque que pour les sociétés de service comme Eone Group et dont les employés sont une
vingtaine du personnel et le C.A est inférieure à cinq millions d’euros, OpenERP est le progiciel le plus
adapté.
Une analyse des résultats de l’étude s’avère indispensable afin de dégager les points favorisants l’un
des PGI par rapport à l’autre parmi les quatre solutions. Cette analyse doit tenir en compte les
contraintes imposées par l’environnement et les besoins de la société. Vu que l’environnement de la
société dédié à la solution de gestion intégrée est un serveur Windows, alors ERP5 est entièrement
éliminé. Pour les ERPs restants, l’ERP qui répond à la majorité des fonctionnalités déjà définies dans le
cahier de charge est OpenERP. En effet, il est le plus compatible avec le secteur d’activité de la société,
sa taille et son chiffre d’affaire. De plus, l’évaluation d’OpenERP selon les critères de la norme ISO 9126
est bonne dans sa totalité.
Donc, après cette étude, la solution choisie est le progiciel de gestion intégrée OpenERP.
15
4 les avantages et les inconvénients d'un ERP
4.1 Avantages d’ERP :
L’ERP est un progiciel de gestion intégré donc c’est l’unique outil qui permettra de mettre en relation les
différentes fonctions de l’entreprise. Cette centralisation globale des données est très intéressante à
plusieurs niveaux :
 Les redondances de saisie sont inexistantes, ce qui se traduit par une meilleure fiabilité des
données par rapport à un "système traditionnel" où les systèmes d’information sont indépendants
entre eux…
 Les différentes fonctions de l’entreprise disposent des mêmes données et en temps réel ce qui
est un avantage certain en terme de délai pour répondre aux besoins des clients.
 L’ergonomie et la logique d’utilisation du progiciel est la même quelque soit le module intégré. La
procédure de formation des différents collaborateurs est donc très simplifiée.
 Une formation, à l’issu de laquelle les différents collaborateurs emploieront un vocabulaire
commun au système et ce, quelque soit la fonction de l’entreprise dans laquelle ils travaillent.
 Les coûts de fonctionnement sont diminués par rapport à un "système traditionnel". Les
traitements sont synchronisés automatiquement, la maintenance corrective est assurée par
l’éditeur.
 Le progiciel permet également de gérer plusieurs organisations, devises, langues…
4.2 Inconvénient des ERP :
Le principal avantage d’un système ERP comme nous l’avons vu dans la catégorie "Les avantages" est
la centralisation des informations pour un partage efficace au sein d’une organisation.
Cependant, cet avantage peut être également un gros inconvénient. Effectivement, c’est toute
l’organisation qui est bloqué en cas de panne du système, ce qui est préjudiciable à toutes les fonctions
de l’entreprise.
Ce n’est pas le seul inconvénient d’un système ERP, nous pourrons également noter les points suivants
 La mise en place d’un ERP est coûteuse financièrement mais également en temps (difficile à
mettre en place).
 Un ERP ne couvre pas forcément tous les besoins d’une entreprise. En effet, il peut être
nécessaire de développer des fonctionnalités supplémentaires pour des besoins spécifiques de
l’organisation (processus). En revanche, un ERP met à disposition de l’entreprise des
fonctionnalités dont elle ne se servira probablement jamais.
 L’intégration d’un ERP dans l’organisation peut générer un sentiment de perte de la maîtrise du
système d’information par rapport à un "système traditionnel" où toutes les fonctions de
l’entreprise sont indépendantes entre elles.
 La mise en place d’un PGI sous-entend également une dépendance envers l’éditeur.
 Les premiers jours, les premiers mois de fonctionnement d’un ERP dans une entreprise ne sont
pas évidents car le fonctionnement de l’organisation est complètement différent. Une baisse de la
productivité est donc à prévoir dans les premiers temps pour la réorganisation des méthodes de
travail avec le nouveau système d’information.
16
Partie II : Contexte général du projet
- Cadre général du projet
- Planification du projet
Dans ce chapitre, nous allons faire la
planification et la réalisation d'un projet
informatique : Installation d'une solution
ERP au sein d'une entreprise
17
1. Cadre général du projet
1.1 Présentation générale des"grossistes-répartiteurs" :
La répartition pharmaceutique est le nom donné dans certains systèmes de santé au système
de grossistes des médicaments, appelés "grossistes-répartiteurs", qui se situent à l'interface entre
les laboratoires pharmaceutiques et les officines de pharmacie.
Les répartiteurs achètent aux laboratoires pharmaceutiques, gèrent et stockent dans leurs
établissements répartis sur l’ensemble du pays (190 sites) livrent et mettent à disposition des officines
plus de 25 000 références de médicaments (soit deux tiers des présentations existantes), dans un délai
de 24 heures maximum.
Trois quarts des médicaments sont vendus, au maximum, une fois par mois par officine. Cette donnée à
elle seule justifie ainsi le métier des répartiteurs : sans ce service, seulement quelques pharmacies
pourraient se permettre d'avoir en stock certains médicaments peu prescrits.
En effet, au Maroc, on dénombre plusieurs laboratoires fabricants et autant de fabricants d’accessoires
et de dispositifs paramédicaux. Les pharmacies devraient donc théoriquement négocier leurs achats
auprès des fournisseurs. On comprend bien que cela est impossible, et pourtant les produits sont tous,
toujours disponibles dans toutes les officines où qu’elles soient : c’est là que le rôle des grossistes
répartiteurs prend tout son sens dans le circuit de distribution du médicament. Ces sociétés de la
logistique pharmaceutique gèrent et mettent à la disposition des pharmacies une collection de plus de
20 000 références dont 7 300 spécialités pharmaceutiques.
Les principaux grossistes répartiteurs au Maroc sont :
o SOCIETE DIPHARM
o SOCIETE DISMEDIC
o SOCIET G.P.M.
o SOCIETE MD5
18
1.2 Problématique :
Les "grossistes-répartiteurs" marocaines souhaitent s’ouvrir sur les nouvelles technologies et les utiliser
pour avoir un meilleur rendement, et ainsi intégrer des solutions de gestion complètes, paramétrables
et flexibles pour la gestion de tout ce qui se rapporte au domaine de la pharmacie.
Notre projet de fin d’études s’inscrit dans le cadre d’une solution optimisé de la gestion des ventes dans
une des sociétés "grossistes-répartiteurs" marocaines, à l’aide de l’ERP open source dans lequel on se
base pour adapter nos besoin.
Le processus métier de la prise de commande jusqu’à la facturation passant par la livraison, se passe
comme suite :
-Un agent commercial passe des appels téléphoniques sur des plages horaires séparer durant la journée
pour prendre les commandes des médicaments souhaité de la part des pharmaciens (agent ou
administrateur) dans toute la région ,par la suite il vérifie la disponibilité et confirme la vente pour
pouvoir généré un bon de livraison qui sera imprimé dans un emplacement dans le magasin ,ensuite un
agent de préparation de commande revoie le bon de livraison , prépare et emballe la commande pour
qu’elle soit enfin livré à la pharmacie en question .
1.3 Objectifs du projet
Le travail demandé est d’adapter un progiciel libre, OpenERP, aux besoins des "grossistes-répartiteurs", en
essayant de rajouter de nouvelles fonctionnalités que les autres solutions ne peuvent offrir.
Afin de garantir une modernisation des services des officines, il est indispensable d’adopter les
nouvelles technologies et les exploiter pour en tirer le meilleur profit.
Les PGI sont connus pour leur intégration des principales fonctions nécessaires à la gestion des flux et
procédures de l’entreprise (comptabilité, achats, ventes…), tous ces outils accèdent à des ressources
communes, en particulier des bases de données.
Parmi les autres avantages des PGI, c’est qu’ils sont conçus de telle sorte qu'un "simple" paramétrage
suffit à les adapter à l'organisation de l'entreprise. Il n'est normalement pas nécessaire d'effectuer des
développements spécifiques, sauf en cas de nécessité, lorsque ce paramétrage ne permet pas de
prendre en compte des particularités liées au métier des officines.
19
Donc, le système d’information à développer aura pour objectifs :
- Objectifs globaux :
 Disposer d’un outil de gestion complet, qui contribuera à l’évolution des "grossistes-répartiteurs".
 Disposer d’un outil dont le support ne nécessite pas trop de ressources, et qui pourra
communiquer avec d’autres applications sans complication
- Objectifs spécifiques :
 Permettre une gestion des éléments de bases, comme les clients, les fournisseurs et les articles
 Permettre d’effectuer des ventes auprès des pharmacies, où il est possible d’éditer des devis, de
créer des bons de commande et vérifier la disponibilitédes produits et imprimer un bon de
livraison .
 Permettre d’effectuer des achats auprès des fournisseurs, où il est possible d’éditer des devis, de
créer des bons de commande et de recevoir les produits
 Permettre une gestion de stock efficace, avec la possibilité de faire des inventaires physiques et
de voir l’état des stocks n’importe quand ainsi que des alertes pour signalé la rupture d’un
produit dans le stock.
 Permettre le suivi des clients, voir leur situation en tout moment, et régler leur crédit s’ils en
ont.
 Permettre de gérer les produits à Quotta
 Permettre de gérer les remises sur les lignes de commande, sur le nombre d’unité commandé,
ainsi que sur le total de la commande.
 Permettre une facturation groupée par client à la fin de chaque mois.
 Limité le crédit pour chaque client .
 Enfin, avoir des statistiques concernant ces points cités auparavant
1.4 Elaboration de Cahier des charges fonctionnel :
Afin de mener à bien notre projet il est bien donc nécessaire de faire une l’analyse préliminaire des
besoins et de faire une liste des différentes fonctionnalités à mettre en oeuvre.
Les fonctionnalités requises sont présentées dans le tableau ci-dessous :
20
Objectif Fonctionnalité
Gestion de base - Gestion des clients
- Gestion des fournisseurs
- Gestion des utilisateurs
- Gestion des produits
Gestion des ventes - Consulter la liste des clients
- Gérer les devis
- Gérer les bons de commandes
- Gérer les bons de livraison des produits
- Gérer les paiements
Gestion des Achats et stocks - Consulter la liste des fournisseurs
- Gérer Les demandes de prix
- Gérer les devis de fournisseurs
- Gérer les bons de commandes
- Gérer les bons de réceptions des produits
- Gérer les paiements
- Vérification des stocks
Les rapports - Imprimer les rapports (bon de commande)
- Imprimer les rapports (facture)
- Imprimer les rapports(bon de livraison)
- Imprimer listes des produits
Statistiques et tableau du bord - Consulter les produits du stock
- Distribution mensuelle des ventes par client
- Distribution détaillée des ventes par produit /
client
- Inventaire physique des produits
Tableau 7:Liste des fonctionnalités requises
2. Planification du projet :
La planification consiste à prévoir le déroulement du projet tout au long des phases constituant le cycle
de vie prévu. C’est ainsi qu’on peut diviser le projet de mise en place d’une solution de gestion intégrée
en quatre grandes parties :
Description et l’analyse des besoins spécifiques : les objectifs de cette phase sont de bien cerner le
sujet d’une part, et de délimiter le périmètre du projet d’autre part au niveau fonctionnel.
21
L’étude comparative des solutions existantes sur le marché: cette étude doit aboutir au choix d’une
solution de gestion intégrée tout en prenant en considération l’environnement de l’entreprise et son
cahier de charge.
La mise en production du progiciel de gestion intégrée (PGI): L’objectif de cette phase est de
construire le système PGI cible, puis d’en vérifier la fiabilité des différents traitements. Les tâches
typiques associées à cette étape sont :
 La personnalisation et le paramétrage.
 La mise à jour de la base de données.
 La fermeture des trous fonctionnels
 La mise à jour finale de la documentation du système final.
La bascule : L’objectif de cette phase est le démarrage opérationnel du progiciel sur le site. Les
tâches typiques associées à cette étape sont :
 La formation des utilisateurs finaux et la documentation des utilisateurs.
 Le pilotage : Test d’intégration sur la base des processus et validation des modes opératoires par
les utilisateurs.
22
Partie III: Etude fonctionnelle et technique
- étude fonctionnelle et technique
- conception détaillé du projet.
Dans ce chapitre, nous allons décrire la
méthodologie de conception et les besoins
de la société, par la suite nous allons les
analyser en utilisant le formalisme UML.
23
3. Etude fonctionnelle :
Avant de spécifier les besoins il est nécessaire de réaliser une étude de l’existant. L’étude de
l’existant est une étape clé dans la réalisation de n’importe quelle application informatique, quel
que soit le domaine concerné. Il s’agit d’une étude permettant de comprendre la problématique du
projet et de détecter les avantages et inconvénients des solutions proposées actuellement sur le
marché afin d’en profiter pour la réalisation de notre projet.
3.1 Etude de l’existant :
La société repose principalement sur trois divisions qui assurent son fonctionnement normal qui
sont : le service des ventes, le service des entrepôts et enfin le service de gestion comptable.
En effet, Le service des ventes, quant à lui, est constitué essentiellement de commerciaux. Chaque
commercial dispose d’une base de données enregistrée sous forme de fichiers Excel, et qui
contiennent ses clients. Ce processus demande une gestion pointue des suggestions, des avis voire
des réclamations des clients, Ensuite le service des entrepôtsest dédié à la gestion des articles et les
livraisons, enfin la gestion comptable assurée généralement un logiciel externe. Cependant, la
société se trouve dans la nécessité de léguer l’élaboration du journal mensuel et du bilan annuel à
une expertise externe.
3.2 Le système fonctionnel :
L’ensemble des activités de la société est géré par des traitements manuels ou bien par le biais des
applications diversifiées tout en utilisant des supports papiers.
Les besoins de la société s’articulent sur les modules fonctionnels suivantes : la gestion des ventes,
la gestion comptable, la gestion des entrepôts,
3.3 Diagramme de contexte :
Le domaine étudié :
Conception et réalisation d’une application de gestion intégrée au sien d’une société "grossistes-
répartiteurs".
Les activités internes du domaine :
 Gestion des ventes
 Gestion des achats et stocks
 Gestion de la relation clientèle
 Gestion de la comptabilité





24
Les acteurs du système

Sur le diagramme de contexte, on constate que ce système est en interaction avec des divers acteurs tel
que :
Acteur Description
Le commercial Peut créer un dossier pour ces clients comme il
peut le mettre à jour, il a le droit de visualiser
l’ensemble des clients de la société. D’autre
part, le commercial peut créer les commandes
pour réaliser une opération de vente.
Le responsable commercial Assure le suivi des ventes faites par les
commerciaux, et gère les factures. Il peut aussi
effectuer les mêmes opérations que le
commercial. De plus, il valide l’ensemble des
bons de commandes et il gère l’ensemble des
articles.
Directeur Supervise l’ensemble des activités et il possède
les mêmes droits d’utilisation comme tous les
acteurs du système.
Le magasinier Peut créer un dossier pour les produits comme il
peut le mettre à jour. D’autre part, le
commercial peut créer les commandes pour
réaliser une opération d’achat
Le responsable des achats Assure le suivi des achats et gère les factures en
les créant et les mettant à jour. De plus, il valide
l’ensemble des bons de commandes d’achats et
il gère l’ensemble des articles achetés.
Administrateur Superviseur et administrateur système.
Tableau : Liste des fonctionnalités requises
25
Diagramme 1: Diagramme de contexte.


Analyse des cas d’utilisations 
Description des scénarios

La gestion des partenaires:

Création d'un Dossier partenaire:
Cette fonction permettra de créer le dossier d'un partenaire lors de sa première opération (vente,
achat…), les données peuvent être complétés ultérieurement et sont toujours modifiables. Ce dossier
contient : Le Nom, le Prénom, le sexe, La Date de naissance, l'adresse, le code postal, la ville, la
profession, les N° de téléphone….
Accès / modification d'un Dossier partenaire :
Cette fonction permet de rechercher et d'accéder au dossier d’un partenaire ainsi que le modifier ou le
compléter si nécessaire.
Suppression d'un Dossier partenaire :
En cas de mauvaise manipulation, cette fonction permet de supprimer le dossier partenaire après
confirmation.
26
Gestion de stock:
Ce module permet de gérer l'ensemble des données nécessaires concernant les produits.
Ajouter un produit :
L’application permet d'ajouter un produit dans la banque de donnée en saisissant la description relative
au produit (Nom, Quantité, Nature, Type, ...)
Rechercher un produit :
L’application permet la recherche d'un produit. La recherche est effectuée par la saisie d'une de ses
caractéristiques citées ci-dessus.
Supprimer un produit :
L’application effectue la suppression d'un produit donné par la personne autorisée. Une
Confirmation est demandée.
Signaler un produit en fin de stock :
L’application permet notamment de prévenir l'utilisateur quant à la diminution du stock relatif au
produit.
Gestion des droits d'accès :
Création d’utilisateurs
Cette fonction permet de créer les différentes fiches du personnel à utiliser le système.
Il suffit de saisir dans le module les données correspondant à l'identification de l'utilisateur concerné
Nom, Login, Mot de passe…
Modification : Le système permet de modifier toutes les données relatives à l'utilisateur.
Suppression : le système permet également de supprimer un utilisateur dans le cas où il n'est
Plus habilité à utiliser l'application.
Création de groupes d'utilisateurs :
Le système permet de créer un groupe selon la fonction de l'utilisateur et de spécifier les droits d'accès
pour chaque groupe.
Modification : cette fonction permet de modifier les droits d'accès d'un groupe.
Suppression : Le système permettra de supprimer un groupe d'utilisateur préalablement crée.
27
Facturation et paiement:
Sauf disposition légale spécifique, toute prestation fournie par l’entreprise doit faire l’objet d’une
facturation et d’une mise en paiement par le partenaire (client ou fournisseur).
La facture étant établie conformément à la réglementation de la tarification applicable aux entreprises.
Créer la facture :
Il permet de créer automatiquement la facture du partenaire dès son admission contient toutes les
informations.
Rechercher :
Cette fonction permet de chercher la facture d'un partenaire donné par le nom et prénom ou d’autre
information administrative.
Régler une facture :
Cette fonction permet de régler la facture en précisant le mode de règlement chèque ou espèce.
Gestion des ventes et achats:
Ce module permet de gérer l'ensemble des données nécessaires concernant les ventes
Cree un devis :
L’application permet d’établir un devis dans un premier temps qui doit être suivi par le système à l’aide
d’un workflow pour qu’il arrive à la facturation.
Rechercher une commande :
L’application permet la recherche d’une commande. La recherche est effectuée par la saisie d'une de ses
caractéristiques à savoir l’état, date, client, fournisseur,...
Annuler une commande :
L’application permet d’annuler une commande donnée par la personne autorisée. Une
Confirmation est demandée.
Suivi des commandes :
L’application permet notamment de suivi toutes les commandes du système payé ou non payé.
Serveur d’email
Le système doit configurer un serveur mail qui assure le flux de communication entre les entités
d’entreprise, ainsi que les partenaires.
4. Etude technique :
4.1 Présentation générale de l’open source
L’acronyme ERP signifie « Enterprise Ressource Planning » traduit en français par Progiciel de Gestion
Intégré ou PGI. C’est un progiciel qui permet de gérer l’ensemble des processus d’une entreprise
intégrant l’ensemble de ses fonctions comme la gestion des ressources humaines, la gestion financière
et comptable, l’aide à la décision, la vente, la distribution, l’approvisionnement, la production ou encore
le e-Commerce. On distingue deux types d’ERP : les ERP propriétaires, édités par des sociétés, ce qui
implique l’achat d’une licence, et les ERP open source qui sont « gratuits ». Dans notre projet Nous nous
intéressons à la catégorie des ERP open-source et plus particulièrement à OPENERP c’est grâce à une
étude comparatif des ERP open source on a fait le choix de l’OpenERP [Wikipédia].
28
4.1 OpenERP
Anciennement connu sous le nom Tiny ERP, signifiant la fourmi de l’Enterprise Resource Planning) est un
progiciel intégré de gestion ouvert, libre de droits comprenant les ventes, la gestion de relation client
(CRM), la gestion de projet, la gestion d'entrepôt, la production, la comptabilité et les ressources
humaines. OpenERP a trois composants séparés : le serveur openerp-server qui stocke ses données dans
une base postgresql, le client openerp-client qui s'installe sur le poste de l'utilisateur et le serveur web
openerp-web qui permet une utilisation depuis un navigateur. Ces trois composants communiquent par
les protocoles xml-rpc et net-rpc.
Le logiciel est basé sur une forte architecture MVC, des flux de travail flexibles, une interface-utilisateur
graphique dynamique, une interface XML-RPC, et un système personnalisable de comptes rendus avec
une intégration pratique d'OpenOffice.org.
Dans la classification des logiciels, OpenERP, comme tout autre PGI sur le marché est un package
destiné, a priori, à tous les secteurs, à toutes les fonctions, les adaptations nécessaires se faisant par
paramétrage.
Il dispose de forts arguments commerciaux pour séduire les dirigeants, Cette offre séduisante par sa
qualité et sa cohérence se révèle à l’usage plus risquée que l’on avait pu l’imaginer : elle ne peut être
efficace que si l’on accepte les contraintes qu’elle impose. Sa mise en oeuvre comporte des difficultés et
des pièges.
Avantages
 Éditeur très dynamique
 Communauté dynamique et expérimentée
 Périmètre fonctionnel inégalé avec ses quelques 500 modules et des nouveaux modules tous les
mois.
 Conception très intelligente. Souvent jusqu'à 10 fois moins de code que les ERP en Java pour
offrir les mêmes fonctionnalités.
 Interface web très compétitive.
 Vrai ORM qui fait le pont entre la base relationnelle et le code objet proche des spécifications
fonctionnelles.
 Tout le data model et les méthodes métier sont nativement exposés en web services, c'est un
gage d'interopérabilité facile.
 Moteur BPM intégré très efficace.
 Grand souplesse générale, notamment grâce à la scriptabilité des rapports.
 Les coûts d'intégration les plus faibles
5.1 Architecture technique de l’OpenERP :

o Architecture Client/serveur :

Open ERP est basé sur une architecture client/serveur. Le serveur et le client communiquent via le
protocole XML-RPC. C’est un simple protocole qui permet au client de faire des appels aux Procédures.
Une fois la fonction est appelée, ses arguments et ses résultats sont envoyés par le Protocole http, eux-
mêmes sont encodés par le langage XML.
29
OpenERP est couplé à une base de données PostgreSQL. De plus, il est compatible au pack Open Office,
et aussi avec des outils de reporting (ReportLab) pour produire des rapports en PDF ou en HTML.
La logique d’openERP est entièrement du côté serveur. La tâche du client se résume à demander les
données (formulaire ou listes) au serveur et de les renvoyer. Avec cette approche, presque tout le
développement est fait du côté serveur. Ce qui rend OPENERP plus simple au développement et à la
maintenance.
L’opération client est très simple. Quand un utilisateur exécute une action (sauvegarder un formulaire,
ouvrir un menu, imprimer, ...) il envoie cette action au serveur. Le serveur envoie alors la nouvelle action
pour s'exécuter côté client.
Il y a trois types d'actions :
 Ouvrir une fenêtre (formulaire, listes)
 Imprimer un document.
 Exécuter un wizard.
Architecture Client-Serveur d’open ERP
6.1 Architecture modulaire d’OpenERP
Un module OpenERP est la définition, dans le «Framework» OpenERP, d’une gestion informatisée d’un
domaine. Cette architecture n’est pas propre à open ERP. Elle est en fait partagée par tous les ERP. Il
s’agit de la faculté de construire des applications informatiques de manière modulaire (modules
indépendants entre eux) tout en partageant une base de données unique. Ceci apporte une importance
significative puisque les données sont maintenant standardisées et partagées. Ce qui élimine les saisies
multiples et évite l'ambiguïté des données de même nature. L’architecture modulaire d’open ERP lui
permet de couvrir plusieurs domaines illustrés dans la figure ci-dessous :
30
Architecture modulaire d’open ERP
 Structure d’un module OpenERP
Structure d’un module OpenERP Python
7.1 Modèle vue contrôleur
Un (MVC) est une architecture de modèles utilisée en génie logiciel. Dans des applications complexes
qui présentent des lots de données aux utilisateurs, on souhaite souvent séparer les données (modèle)
et l'interface utilisateur (vue), de sorte que les changements à l'interface utilisateur n'affectent pas le
traitement des données, et que les données peuvent être réorganisées sans changer l'interface
utilisateur. Le MVC résout ce genre de problème en découplant l'accès des données et la logique des
31
applications de la présentation des données et de l'interaction utilisateur, en introduisant un composant
intermédiaire : « le contrôleur ».
Dans open ERP, on peut appliquer cette sémantique de Model View Controller avec :
 Model : les modèles sont les objets déclarés dans OpenERP. Ils sont également des tables
PostgreSQL.
 View : les vues sont définies en fichiers XML dans OpenERP.
 Controller : le contrôleur est les classes Python qui contrôle OpenERP.
Modèle vue contrôleur
OpenERP offre un cadre de développement, c’est à dire des «services» techniques informatiques:
 Un serveur de base de données objet pour représenter et mémoriser les objets de gestion et les
rendre accessible via le réseau.
 Un "workflow" qui contrôle l’évolution des objets suivant une procédure.
 Des formulaires et écrans pour l’interaction avec l’utilisateur.
 Des états imprimables des objets.
8.1 Gestion électronique des processus métier (workflow)
On appelle workflow la modélisation et la gestion informatique de l'ensemble des tâches à accomplir et
des différents acteurs impliqués dans la réalisation d'un processus métier (aussi appelé processus
opérationnel ou bien procédure d'entreprise). Le terme de « workflow » pourrait donc être traduit en
français par « gestion électronique des processus métier ». De façon plus pratique, le workflow décrit le
circuit de validation, les tâches à accomplir entre les différents acteurs d'un processus, les délais, les
modes de validation, et fournit à chacun des acteurs les informations nécessaires pour la réalisation de
sa tâche. Pour un processus de publication en ligne par exemple, il s'agit de la modélisation des tâches
de l'ensemble de la chaîne éditoriale. Il permet généralement un suivi et identifie les acteurs en
précisant leur rôle et la manière de le remplir au mieux ,[Wikipédia].



32
 But
 Description de l'évolution du document dans le temps
 déclenchement automatique d'actions si certaines conditions sont remplies
 gestion des rôles de l'entreprise et les étapes de validation
 gestion des interactions entre les différents objets / modules
9.1 Les services Web
Un service web est un programme informatique permettant la communication et l'échange de données
entre les applications et systèmes hétérogènes dans des environnements distribués. Il s'agit donc d'un
ensemble de fonctionnalités exposées sur internet ou sur un intranet,
 Pourquoi faire ?
• Décomposition d'une application en briques fonctionnelles ou unités logiques applicatives.
• Composant réutilisable fournissant des données et des services à d’autres Applications.
• Facilite l'interopérabilité des différents modèles de composants en interne comme en externe.
• Utilisation et intégration très facilitées de composants métiers de partenaires
• Agrégation de plusieurs services de métiers différents sur un même site (horaires/réservation train,
assurance, hôtel...)
 Invocation
o Il existe deux grands standards de services web, tous deux basés sur XML :
XML-RPC (XML RemoteProcedure Call), le plus ancien, fonctionnant sur un principe procédural et sans
gestion des états.
o SOAP (Simple Object Access Protocol), fonctionnant selon le modèle objet.
Quel que soit le standard utilisé, le principe de programmation est le même : l'appel de méthode
distante est réalisé grâce à une bibliothèque cliente qui transmet la demande au fournisseur de service
en la formatant en XML de manière transparente; au niveau du serveur une bibliothèque serveur
décode la requête, le serveur fait ses traitement, puis répond grâce à cette même bibliothèque; la
bibliothèque client décode enfin la réponse afin qu'elle puisse être utilisée par l'application client.

 XML-RPC
XML-RPC est un protocole RPC (Remoteprocedure call), une spécification simple et un ensemble de
codes qui permettent à des processus s'exécutant dans des environnements différents de faire des
appels de méthodes à travers un réseau.
XML-RPC permet d'appeler une fonction sur un serveur distant à partir de n'importe quel système
(Windows, Mac OS X, GNU/Linux) et avec n'importe quel langage de programmation. Le serveur est lui-
même sur n'importe quel système et programmé dans n'importe quel langage.

33
Un message XML-RPC est une requête HTTP POST dont le corps est formalisé en XML
La réponse de la procédure distante est également au format XML
XML RPC services
5. Conception détaillé du projet
5.1 Cas d’utilisation
5.1.1 Administration du système :
L’administration complète du système est assurée par l’administrateur. Celui-ci se charge de contrôler
l’accès des utilisateurs et de gérer l’ensemble des fonctionnalités du système. Ceci est modélisé par le
diagramme de cas d’utilisation suivant :
Diagramme de cas d’utilisation d’administration du système
34
Authentification : avant de se connecter au système, chaque acteur doit être identifié par un login et un
mot de passe afin d’avoir les permissions d’accès au système.
Gérer les comptes et les droits des utilisateurs : ce cas permet à chaque utilisateur du système d’avoir
son compte qui comporte l’ensemble des processus métiers dont lesquels il intervient. Comme, il
attribue les droits d’accès à l’utilisateur afin de garantir la fiabilité du système.
Gérer les fonctionnalités du système : ce cas permet à l’administrateur de gérer la totalité des fonctions
métiers du système, comme il peut paramétrer des nouvelles fonctionnalités en cas de besoin.
5.1.2 Diagramme de cas utilisation global de La gestion des ventes
La gestion des ventes consiste à gérer l’ensemble d’activités des commerciaux, et assurer le suivi des
commandes des clients tout en gérant les factures et les dossiers des clients.
Les utilisateurs sont tenus d’utiliser le système dans la réalisation de leurs tâches qui sont accordées.
Ce diagramme regroupe les fonctionnalités globales que doit assurer le système vis-à-vis la gestion des
ventes, et par la suite on va détailler ce diagramme pour bien éclaircir l’utilité de chaque cas
d’utilisation.
35
5.1.3 Diagramme de cas utilisation détaillée de La gestion des ventes
Description des cas d’utilisation :
Gérer les clients : ce cas d’utilisation permet aux acteurs de créer et mettre à jour les dossiers liés
aux clients, comme il doit assurer le suivi des clients, comme il permet d’associer les contacts au client si
le client est une société.
Gérer les commandes : permet de gérer et de faire le suivi des commandes vis-à-vis au client
avec les rapports imprimés.
Gérer la facturation : ce cas assure la création et la mise à jour des factures, comme il permet
de faire le suivi des factures jusqu’à la dernière étape qui est le paiement.
Gérer les produits : comporte la création des produits ou bien les mettre à jour. Aussi, ce cas
d’utilisation permet de visualiser la variation des stocks et de signaler les besoins vis-à-vis les
produits matériels non disponibles.
Suivi d’activité : contient l’ensemble des tableaux de bords qui font l’analyse des ventes selon
les indicateurs (comme le chiffre d’affaire par mois, le nombre des ventes par client, analyse des
factures).
36
Diagramme de cas d’utilisation détaillé de la gestion des ventes.
Ce diagramme regroupe les fonctionnalités globales que doit assurer le système vis-à-vis la gestion
des achats et par la suite, on va détailler ce diagramme pour bien montrer l’utilité de chaque cas
d’utilisation.
37
5.2 Les processus métiers
5.2.1 Le processus métier des ventes
Afin de comprendre le processus des ventes de point de vue métier et d’éclaircir la relation entre
les différentes phases d’une vente, le diagramme suivant illustre ses relations:
Processus métier des ventes.
Une fois le commercial reçoit un bon de commande de la part d’un client, il crée un devis qui doit
être envoyé par la suite à ce client par email pour vérifier les informations afin de la convertir en
une commande de vente validée. Pour ensuite passer par le service de facturation et de livraison. La
vente se termine une fois elle est livrée et facturée.
5.2.2 Processus métier de la gestion comptable
L’enchainement de l’ensemble des activités de la gestion comptable et ses liaisons avec les autres
services est présenté dans le diagramme suivant :
38
Processus métier de la gestion comptable
Une fois la facturation de vente est validée, une écriture comptable doit être associée. C’est à ce
moment où commence le processus du paiement qui aboutit en fin à une facture payée.
5.3 Diagramme de séquence
5.3.1 Diagramme de séquence des ventes
Les diagrammes de séquences sont la représentation graphique des interactions entre les acteurs et le
système selon un ordre chronologique
39
Diagramme de séquence des ventes.
40
Les scénarios :
Dans le processus des ventes on a l’acteur responsable qui interagie avec le système central(ERP).
Un client a besoin d’un produit doit interagit avec le responsable du vente afin d’établir un devis.
Après l’établissement de devis le système doit consulter l’état de stock pour enregistrer cette
dernière.
Après l’enregistrement, le responsable valider la commande et notifié le client par un email ou SMS
pour lui confirmer la commande.
Génération de la facture totale a payé par le client.
5.4 Diagramme de classe
Diagramme des classes détaillé
41
Ce diagramme représente les classes nécessaires pour assurer un bon fonctionnement du système à
mettre en œuvre, les utilisateurs de l’application sont regroupés dans des groupes, chaque groupe
possédant des privilèges qui permettent à ses utilisateurs inscrits d’accéder à certaines fonctionnalités.
Les utilisateurs peuvent effectuer des ventes des produits aux clients, chaque vente se compose des
lignes vente, chacune de ces lignes contient un article désigné, avec la quantité à vendre.
6. Technologies mises en œuvre
Ce chapitre décrit les différentes technologies adoptées et utilisées pour la réalisation de ce projet, à
commencer par le système d’exploitation Ubuntu, tout en passant par le PGI OpenERP, le système de
gestion de bases de données PostgreSQL, et en fin les langages nécessaires pour le développement, à
savoir le langage Python et XML.
6.1 Ubuntu
Ubuntu est un système d’exploitation libre commandité par la société Canonical et une marque déposée
par cette même société.
Fondé sur la distribution Linux Debian et utilisant le bureau Unity, Ubuntu se veut « convivial, intuitif et
sûr ». Il est constitué de logiciels libres, est disponible gratuitement y compris pour les entreprises, et
bénéficie d'une nouvelle version (appelée « mise à niveau ») tous les six mois.
Avec une utilisation globale estimée à plus de 25 millions d'utilisateurs, il est principalement conçu pour
une utilisation sur des ordinateurs personnels (portables et fixes), bien que d'autres versions consacrées
aux netbooks et aux serveurs existent aussi. Depuis Ubuntu 11.04, la version Netbook a fusionné avec la
version Desktop. Cette dernière étant passée à l'interface Unity, il n'y avait plus de raison de maintenir
deux branches distinctes.
42
Interface d'Ubuntu 11.10
La version d’Ubuntu utilisée pour ce projet est la 11.10, ayant pour nom de code « The Oneiric Ocelot »,
cette version est la quinzième version d'Ubuntu. Son développement s'est échelonné sur six mois,
jusqu'à sa publication en tant que version stable le 13 octobre 2011.
Elle profitera des mises à jour de sécurité pendant une durée de 18 mois, soit jusqu'en avril 2013.
6.2 PostgreSQL
PostgreSQL est un système de gestion de base de données relationnelle et objet (SGBDRO). C'est un
outil libre disponible selon les termes d'une licence de type BSD.
Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils soient libres (comme
MySQL et Firebird), ou propriétaires (comme Oracle, Sybase, DB2, Informix et Microsoft SQL Server).
Comme les projets libres Apache et Linux, PostgreSQL n'est pas contrôlé par une seule entreprise, mais
est fondé sur une communauté mondiale de développeurs et d'entreprises.
PostgreSQL peut stocker plus de types de données que les types traditionnels entier, caractères, etc.
L'utilisateur peut créer des types, des fonctions, utiliser l'héritage de type etc.
43
PostgreSQL est pratiquement conforme (de plus en plus conforme) aux normes ANSI SQL 89, SQL 92
(SQL 2), SQL 99 (SQL 3), SQL:2003 et SQL:2008. Il fonctionne sur diverses plates-formes matérielles et
sous différents systèmes d'exploitation.
Logo PostgreSQL
PostgreSQL fonctionne sur Solaris, SunOS, Mac OS X, HP-UX, AIX, Linux, IRIX, Digital Unix, BSD, NetBSD,
FreeBSD, OpenBSD, SCO unix, NeXTSTEP, UnixWare et toutes sortes d'Unix. Depuis la version 8.0,
PostgreSQL fonctionne également nativement sur Windows. Avant la version 8, il fallait un émulateur de
type cygwin pour faire fonctionner PostgreSQL sur ce système d'exploitation.
PostgreSQL est largement reconnu pour son comportement stable, proche de Oracle. Mais aussi pour
ses possibilités de programmation étendues, directement dans le moteur de la base de données, via
PL/pgSQL. Le traitement interne des données peut aussi être couplé à d'autres modules externes
compilés dans d'autres langages.
6.3 OpenERP
Anciennement connu sous le nom Tiny ERP, signifiant la fourmi de l’Enterprise resource planning) est un
progiciel intégré de gestion ouvert, libre de droits comprenant les ventes, la gestion de relation client
(CRM), la gestion de projet, la gestion d'entrepôt, la production, la comptabilité et les ressources
humaines. OpenERP a trois composants séparés : le serveur openerp-server qui stocke ses données dans
une base postgresql, le client openerp- client qui s'installe sur le poste de l'utilisateur et le serveur web
openerp-web qui permet une utilisation depuis un navigateur. Ces trois composants communiquent par
les protocoles xml- rpc et net-rpc.
44
Interface Web d'OpenERP
Le logiciel est basé sur une forte architecture MVC, des flux de travail flexibles, une interface-utilisateur
graphique dynamique, une interface XML-RPC, et un système personnalisable de comptes-rendus avec
une intégration pratique d'OpenOffice.org.
Dans la classification des logiciels, OpenERP, comme tout autre PGI sur le marché est un package
destiné, a priori, à tous les secteurs, à toutes les fonctions, les adaptations nécessaires se faisant par
paramétrage.
Il dispose de forts arguments commerciaux pour séduire les dirigeants (il propose de mettre un terme
au désordre du système d’information, et aussi de régler des problèmes d’organisation sans effort
politique). Cette offre séduisante par sa qualité et sa cohérence se révèle à l’usage plus risquée que l’on
avait pu l’imaginer : elle ne peut être efficace que si l’on accepte les contraintes qu’elle impose. Sa mise
en œuvre comporte des difficultés et des pièges.
Implanter un PGI a ses avantages, parmi lesquels je cite :
o Optimisation des processus de gestion
o Cohérence et homogénéité des informations
o Intégrité et unicité du Système d’information
o Mise à disposition d’un outil multilingue et multidevises (très adapté aux
multi-nationales)
o Communication interne et externe facilitée par le partage du même
système d’information
45
o Meilleure coordination des services et donc meilleur suivi des processus
(meilleur suivi de commande ou meilleure maîtrise des stocks par exemple)
o Normalisation de la gestion des ressources humaines (pour les entreprises gérant
de nombreuses entités parfois géographiquement dispersées)
o Minimisation des coûts (formation et maintenance)
o Maîtrise des coûts et des délais de mise en œuvre et de déploiement
o Mise à disposition, des cadres supérieurs, d’indicateurs nettement plus fiables
que lorsqu’ils étaient extraits de plusieurs systèmes différents
Toutefois, cela peut avoir quelques inconvénients, comme la lourdeur et la rigidité de la mise en œuvre,
ou encore les difficultés d’appropriation par le personnel de l’entreprise.
OpenERP comporte plusieurs modules fonctionnels, je cite les exemples suivants :
o CRM ; gestion de la relation client
o Comptabilité analytique et financière (Conforme aux exigences françaises)
o Gestion des stocks
o Gestion de production (GPAO)
o Gestion de projets et des activités de services
o Norme qualité : ISO 9001 version 2000
o Gestion des ventes
o Gestion des achats
o Marketing
o Logistique
o Ressources humaines
o Gestion documentaire
Coté architecture, OpenERP est basé sur une architecture 3 tiers:
1. Un serveur de base de données PostgreSQL (qui peut contenir plusieurs bases de données)
2. Un serveur d'applications (contenant les objets de gestion, le moteur de workflow, le générateur
d'édition, etc.)
3. Un serveur de présentation (appelé OpenERP Web) qui permet à l'utilisateur de se connecter à
OpenERP avec n'importe quel navigateur internet (avec le lecteur Flash installé pour l'affichage
des graphiques). Ce serveur n'est pas nécessaire si l'utilisateur utilise le client lourd mais qui
nécessitera une installation physique sur le poste de l'utilisateur (cette application se nomme
Client GTK).
46
Architecture d'OpenERP
Ses fonctions de veille économique intégrées permettent à des utilisateurs multiples de traiter tous les
aspects du logiciel. Ainsi, les rapports et les flux de travail peuvent être personnalisés.
La partie serveur est écrite en langage Python. Les différentes briques sont organisées en «modules».
Un module est un dossier avec une structure pré-définie contenant du code Python et des fichiers XML.
Un module définit la structure de données, formulaires, rapports, menus, procédures, flux de travail,
etc.
Le client est léger car il ne contient pas de logique d'entreprise (l'ensemble est embarqué dans le
serveur d'application). Ainsi, l'ajout de nouveaux objets, comme les menus ou formulaires, le rend
accessible à tout type de client graphique (GTK+, Web, Qt, ou Texte).
Le client GTK+ est par défaut et est basé sur la plateforme PyGTK (Python).
Le client-web est écrit en langage Python. Il utilisait la plate-forme turboGears jusqu'à la version 5.0.1.
Bien que concernant le contenu, les clients GTK + et -web soient équivalents, il existe certaines
différences dans la fonctionnalité de l'interface. Par exemple le client-web peut avoir un lien de
personnalisation sur chaque formulaire, mais le client GTK+ n'a pas de fonction comparable.
Pour ce projet, la version d’OpenERP qui m’a été conseillée pour l’utiliser est la 6.1, parue en février
2012, cette version comporte plusieurs nouveautés :
47
- Un meilleur partage des informations : Des fonctionnalités de partage des informations à des tiers ont
été ajoutées. Il est par exemple possible de permettre l'accès aux données d'un projet en cours à un
sous-traitant ou de permettre à un client de consulter les factures qui lui correspondent et de les
imprimer. La refonte de l'interface Web riche en javascript permet en outre d'intégrer n'importe quelle
partie de l'interface d'OpenERP à site Web tiers.
- Fonctions d'échanges EDI : Des fonctions d'Échange de données informatisé font leur apparition,
permettant à un partenaire d'importer des données (par exemple une facture) le concernant dans son
propre système OpenERP ou progiciel tiers (au format JSON), et même d'effectuer le paiement en ligne.
- Une interface mobile : Une nouvelle interface conçue pour l'utilisation sur les terminaux mobiles de
type smartphone fait son apparition. Basée sur le framework JQuery Mobile, elle ne permet pour
l'instant que la consultation en lecture seule des informations.
- Une interface destinée aux points de ventes : Une nouvelle interface dédiée aux points de ventes à
écran tactiles, tablettes et autre dispositifs de caisse interactifs est inaugurée dans cette version
d'OpenERP. Cette fonctionnalité très demandée permet d'utliser un lecteur de codes à barres, de
sélectionner des produits par catégorie/sous catégorie, la recherche par nom de produits et peut
fonctionner hors-ligne et se synchroniser automatiquement lorsque la connexion avec le serveur est
rétablie.
Et ce ne sont pas que les nouveautés qu’a apporté cette version, mais aussi des améliorations :
o Une configuration plus simple : De nouveaux boutons de raccourcis font leur apparition,
permettant de créer plus intuitivement de nouveaux documents et de nouveaux
enregistrements directement à partir de leur saisie dans les champs de données. De même, une
installation fraîche d'OpenERP inclut dorénavant une configuration minimale des modules, basée
sur les bonnes pratiques et les utilisations les plus courantes observées chez les utilisateurs.
o Un effort sur l'utilisabilité : L'installateur et l'assistant de configuration ont été repensés afin de
faciliter la compréhension par les nouveaux utilisateurs, en demandant moins de détails sur la
société à gérer et en se focalisant sur les informations absolument nécessaires. La page
d'installation des modules propose par défaut une installation sous forme de « thèmes ». Par
exemple, un clic sur le thème « Ventes » installera tous les modules nécessaires à la gestion des
ventes, et vous dirigera ensuite automatiquement vers ce module configuré et prêt à l'emploi.
o Importation des données facilitée : L'importation des données dans OpenERP à partir de
sources tierces a été améliorée. En effet, un assistant fait son apparition permettant de
facilement faire correspondre un fichier de données au format csv au schéma de données
OpenERP. À noter aussi l’existence de fonctions d'importation automatisée des données depuis
SugarCRM et Google Calendar.
48
o Sous-système de courriels unifié : La configuration des paramètres de connexions pour l'envoi
et la réception de courriels est maintenant unifiée, ce qui met fin à la duplication des
configurations pour les modules tirant partie de ces fonctions de courriels.
o Refonte du module de paie : Le module de gestion de paie a été repensé, afin d'être plus
flexible et s'adapter ainsi plus aisément aux spécificités de chaque pays et de chaque
entreprise.
o Ré-écriture de l'interface Web : L'interface Web d'OpenERP a été entièrement ré-écrite et fait
dorénavant la part belle à la technologie Javascript, sans non plus bouleverser son apparence et
l'expérience utilisateur. Parmi les conséquences, on peut noter qu'elle offre plus de
fonctionnalités avec moins de code, et est plus rapide que l'ancienne implémentation de la 6.0.
Au niveau des améliorations se trouve aussi la possibilité de personnaliser les tableaux de bord
directement depuis l'interface avec de simples glisser-déposer, ainsi que l'arrivée d'une
nouvelle forme de présentation des données, la vue « kanban ».
o Compatibilité WSGI : De gros efforts ont été fait afin de rendre OpenERP compatible avec Web
Server Gateway Interface qui permet de recourir à des serveurs d'application python tels que
Gunicorn et uWSGI facilitant une implémentation extrêmement robuste d'OpenERP sur les
serveurs, un bien meilleur contrôle de l'assignation des ressources matérielles et une
simplification de la mise en place de mécanismes de réplication et de répartition de charge (les
serveurs d'applications proposant souvent de telles fonctionnalités).
6.4 Python
Python est un langage de programmation multi-paradigme. Il favorise la programmation impérative
structurée, et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la
mémoire par ramasse-miettes et d'un système de gestion d'exceptions ; il est ainsi similaire à Perl, Ruby,
Scheme, Smalltalk et Tcl.
Le langage Python est placé sous une licence libre proche de la licence BSD et fonctionne sur la plupart
des plates-formes informatiques, des supercalculateurs aux ordinateurs centraux, de Windows à Unix en
passant par Linux et Mac OS, avec Java ou encore .NET. Il est conçu pour optimiser la productivité des
programmeurs en offrant des outils de haut niveau et une syntaxe simple à utiliser. Il est également
apprécié par les pédagogues qui y trouvent un langage où la syntaxe, clairement séparée des
mécanismes de bas niveau, permet une initiation plus aisée aux concepts de base de la programmation.
49
Python est un langage :
o conçu pour produire du code de qualité, portable et facile à intégrer : grâce à sa syntaxe claire,
cohérente et concise, Python permet aux développeurs de produire du code de qualité, lisible et
maintenable. Écrire du code Python est un exercice agréable, même en respectant les
conventions de codage. Fourni dès le départ avec des modules de tests, Python est un langage
agile. Le terme agile est originellement issu de la méthodologie de programmation agile (Beck et
Al.), très proche de la programmation itérative. Cette méthodologie, qui réduit les risques liés à
la conception de logiciels, introduit entre autres des principes de tests continus du code.
o De haut niveau, orienté objet et totalement libre : même si elle n’est pas imposée, Python
permet la programmation orientée objet. Tous les mécanismes objet essentiels sont
implémentés et toutes les données manipulées sont des instances de classes, comme pour les
langages SmallTalk ou Ruby. Enfin, le code peut être structuré en modules (fichiers) qui sont
ensuite importables dans l’interpréteur. Ce découpage, permet d’organiser le code et son
utilisation par des espaces de noms, et aussi de faciliter l’extension du langage par des
bibliothèques tierces compilées dans d’autres langages.
o Hautement productif : La conception d’applications en Python est très rapide car certains
aspects de programmation sont gérés automatiquement, comme la gestion des ressources
mémoire et le typage des données. Grâce à des types de base très puissants et des primitives de
haut niveau, un programme Python est simple à concevoir et concis. Un programme Python est
en général 3 à 5 fois plus court qu’un programme C++ équivalent. Ces qualités font de Python un
langage idéal dans beaucoup de domaines. Enfin, la bibliothèque standard de Python est très
complète, et permet de répondre aux besoins communs de programmation. Grâce au modèle
Open Source, la communauté des développeurs Python est en outre très productive et de
nombreuses extensions gravitent autour du langage.
o Hautement productif : La conception d’applications en Python est très rapide car certains
aspects de programmation sont gérés automatiquement, comme la gestion des ressources
mémoire et le typage des données. Grâce à des types de base très puissants et des primitives de
haut niveau, un programme Python est simple à concevoir et concis. Un programme Python est
en général 3 à 5 fois plus court qu’un programme C++ équivalent. Ces qualités font de Python un
langage idéal dans beaucoup de domaines. Enfin, la bibliothèque standard de Python est très
complète, et permet de répondre aux besoins communs de programmation. Grâce au modèle
Open Source, la communauté des développeurs Python est en outre très productive et de
nombreuses extensions gravitent autour du langage.
50
6.5 XML
XML (eXtensible Markup Language) est en quelque sorte un langage HTML amélioré permettant de
définir de nouvelles balises. Il s'agit effectivement d'un langage permettant de mettre en forme des
documents grâce à des balises (markup).
Contrairement à HTML, qui est à considérer comme un langage défini et figé (avec un nombre de balises
limité), XML peut être considéré comme un métalangage permettant de définir d'autres langages, c'est-
à-dire définir de nouvelles balises permettant de décrire la présentation d'un texte (Qui n'a jamais
désiré une balise qui n'existait pas ?). La force de XML réside dans sa capacité à pouvoir décrire
n'importe quel domaine de données grâce à son extensibilité. Il va permettre de structurer, poser le
vocabulaire et la syntaxe des données qu'il va contenir.
En réalité les balises XML décrivent le contenu plutôt que la présentation (contrairement À HTML).
Ainsi,XML permet de séparer le contenu de la présentation, ce qui permet par exemple d'afficher un
même document sur des applications ou des périphériques différents sans pour autant nécessiter de
créer autant de versions du document que l'on nécessite de représentations !
XML a été mis au point par le XML Working Group sous l'égide du World Wide Web Consortium (W3C)
dès 1996. Depuis le 10 février 1998, les spécifications XML 1.0 ont été reconnues comme
recommandations par le W3C, ce qui en fait un langage reconnu. (Tous les documents liés à la norme
XML sont consultables et téléchargeables sur le site web du W3C, http://www.w3.org/XML/)
XML est un sous ensemble de SGML (Standard Generalized Markup Language), défini par le standard
ISO8879 en 1986, utilisé dans le milieu de la Gestion Electronique Documentaire (GED). XML reprend la
majeure partie des fonctionnalités de SGML, il s'agit donc d'une simplification de SGML afin de le rendre
utilisable sur le web !
XML fait partie du code des modules composants OpenERP, les vues par lesquelles sont représentés les
différents objets sont écrites en XML, ainsi nous y trouvons la description détaillée de l’affichage des
arbres, formulaires, menus et autres actions
.
51
Partie IV: La maitrise du module
-installation du module
-Gestion des ventes
Dans ce chapitre nous allons apprendre
comment installer le module de la vente, et
réaliser des ventes selon les besoins exigés
52
7 Installation des Modules :
Nous installons maintenant un module nommé Sales Management, qui va nous permettre de gérer les
ventes de l’entreprise. Pour ce faire, ouvrez la liste des modules à installer via le menu
Administration »Gestion des modules » Modules. Recherchez le module en entrant son nom (Sales
Management) dans l’écran de recherche, puis cliquez dessus pour l’ouvrir. Le formulaire de description
du module vous donne alors les informations utiles telles que son numéro de version, son statut et un
récapitulatif des fonctionnalités apportées par ce module. Cliquez sur le bouton Installer et le statut du
module passe à l’état À installer.
53
7.1 Configurer les données de la comptabilité :
On va Choisir un ensemble de configuration pour configurer automatiquement nos taxes et notre plan
comptable.
On va configurée Logiciel de comptabilité (Accounting Package) pour Maroc –comptabilité et la société
à notre société.
54
7.2 Règlement de l’option de comptabilité :
Après le Click sur Continuer, il va vous apparaissez une fenêtre de règlement de l’option de notre
comptabilité, Dans notre cas on va laisser le devise comme il est, et le TVA de l’achat et du vente on va
le configurer sur 20%.
55
7.3 Installation Le module du Stock :
Maintenant on doit installer le module du Stock (Warehouse Management) Sachant qu’on ne peut pas
effectuer une vente sans avoir un stock, pour ce faire, ouvrez la liste des modules à installer via le menu
Administration »Gestion des modules » Modules. Recherchez le module en entrant son nom
(Warehouse Management) dans l’écran de recherche.
56
7.4 Installation le module d’alerte :
On va taper dans la barre de recherche : « Warning Messages and Alerts », ce module nous permet
d’afficher des alertes quand on aura besoin d’avertir l’agent commercial pour vendre un article à un
client.
57
7.5 Installation le limiteur du crédit :
On est besoin maintenant d’un module qui nous aidera à limiter le crédit de chaque client et qu’il ne
doit pas le dépasser, ce module n’est pas donner, c’est un module qu’on a paramétré à l’aide du langage
python et voici comment on peut l’installer :
Ce module s’appelle « customer_credit_limit », On va le placer dans ce chemin « C:Program
FilesOpenERP 7.0-20140114-001020Serverserveropenerpaddons » Après on clique sur Mettre à
jour les listes des modules et on le mettre à jour, puis on clique sur appliquer les mises à jour aussi on
clique sur mettre à jour, et finalement on cherche les modules non installer et on installe notre module.
Installation le module de la remise globale :
Finalement Nous somme besoin d’un module Qui nous permettons d’affecter une remise globale sur le
bon de commande, Ce module qu’on doit installer s’appelle « Global Discount » On tape son nom dans
la barre du recherche.
58
7.6 Gestion des ventes :
Avant de commencer et afin d’optimiser notre travail et de le rendre plus professionnel, il est favorable
de mettre d’autre utilisateurs On est besoin d’un Magasinier, agent commercial et un responsable
commerciale chacun un rôle attribuer.
Le magasinier :assume sa responsabilité sur les entrepôts c’est lui qui gère le stock, ajoute des articles,
Voir la disponibilité d’un produit, livre les bons de commande.
L’agent commercial :c’est lui qui ajuste les devis, effectuer une bon de commande, fait des remises,
Responsable commercial :fait les rôles de toutes les utilisateurs, c’est lui qui Contrôle tous, et plus
d’autre privilèges.
-On verra maintenant Comment crée ces utilisateurs, et la configuration de ses droits d’accès.
Pour ce faire, Ouvre Configuration » utilisateurs et On crée :
-Le magasinier son droit d’accès Entrepôt : responsable.
59
-Agent Commercialson droit d’accès See All leads.
-Responsable Commercialson droit d’accès Responsables sur les ventes, Entrepôt, achat et comptable
en comptabilité & finance, employée en ressources humaines.
60
N .B : il fallait mettre à chaque utilisateur un mot de passe pour qu’il puisse ouvrir aisément sa session
lors de sa prochaine connexion.
Création des articles :
On commence notre projet par la création des articles :
Ce travail se fait par le magasinier ou par le responsable commerciale, il Clique sur Entrepôt puis sur
articles et il crée leur produit, et voici les étapes de la configuration :
61
Compte de revenus et de dépenses on le configure sur 711100 Ventes de marchandises
au Maroc
Création des Clients :
Ce travail se fait par l’agent commercial ou par le responsable commerciale, il clique sur Vente puis sur
Client, il crée un client, voici un exemple d’un client :
62
Configuration de la vente :
On configure le module vente selon nos besoin, On clique sur Configuration puis Sales et on coche les
éléments exigés, dans notre cas on doit cocher Générez les factures après et sur la base des bons de
livraison et Utilisez les listes de prix pour adapter votre prix aux clients.
63
Processus de ventes :
Ce travail est attribuer au agent commercial, il clique sur Ventes puis sur devis et il crée un devis,
comme je viens de vous montrer :
Après il clique sur Confirmer la vente, cela transforme le devis à un bons de commande.
64
Lorsque le magasinier va connecter il va remarquer qu’un bons de livraison est ajouté, il va vérifier la
disponibilité du produit dans le stock après il va le livré.
--------------------------------------------------------------------------------------------------
--------
65
------------------------------------------------------------------------------------------------------
66
8 Gestion des ventes Selon le Cahier des charges :
Système d’alerte :
- Alerte de la rupture du stock : cette alerte il se génère automatiquement lorsqu’on définit un
produit comme Article Stockable, et non pas une Article consommable, et Voilà le Message qu’il
va nous apparait Lorsqu’on a dépassé le nombre réel du produit en Stock :
- Alerte COTA :Cette alerte se génère par le magasinier, ce n’est qu’un avertissement en
provenance de l’article, informe l’agent commercial lorsque la quantité d’un produit a diminué
d’une valeur préalablement définit, il doit vendre pour chaque client une quantité restreinte, et
voici comment on peut le faire :
Le magasinier ouvre sa session, et clique sur entrepôt » article, sélectionne l’article sollicité et
écrit le message qui va apparait au agent commercial quand il veut faire une bon de commande
sur le produit choisis.
67
Lorsque l’agent commercial ouvre sa session, et il veut faire une bons de livraison sur cette
article l’avertissement apparaitra.
68
Alerte sur le crédit :Cette Alerte ce fait grâce au module « customer_credit_lemit », et se
fonctionne quand un client dépasse le crédit saisi par l’agent commercial ou par le responsable
commercial, et qui empêche le client de demander un produit tant que son crédit a atteint le
crédit autorisé, et voilà comment on peut le faire : On doit aller à la configuration du client, puis
comptabilité et on modifie le champ limite de crédit.
-
- Le client est déjà fait 2 Bons de commande, Lors de la confirmation de vente du 3éme bons de
commande :
-Voici le message d’alerte qu’il apparaît Quand le client a dépassé son crédit autorisé :
69
Facturation groupée : On veut faire une facturation groupé Sur les lignes de commande ou de
livraison, ça veut dire un rassemblement de toutes les bons de commandes à facturé ou des livraisons à
facturer en une seule facture groupée.
Facturation sur lignes de commande : Après la confirmation de la vente il faudra maintenant réaliser
les factures, Voilà les étapes à suivre pour le faire.
On va faire un filtre personnalisée des bons de commande à facturer, regroupé par client, et on va le
nommer Facture regroupée afin d’utiliser plusieurs fois.
70
On sélectionne les factures à groupée, et on clique sur Autre options, Générer les factures
Après On doit cocher la case de grouper les factures, et on précis la date de facturation et on clique sur
Créer les factures.
Facturation sur lignes de livraison :Après la livraison de la commande, on peut créer aussi des factures à
partir de ces lignes de livraison, voici les étapes à suivre pour le faire.
71
On doit commencer par filtrer les livraisons à facturer
Après On clique sur Autre options, Créer les factures brouillon
On doit cocher la case groupé par partenaire, et on valide une date de facturation
72
Les Remises :
Remise sur les bons de commande :
La remise permet de déprécier la valeur du montant, On peut le faire directement sur le produit ou sur
le total par la remise global, et voici comment on peut le faire :
On saisit manuellement le pourcentage de remise soit sur article, soit sur le total
73
Voici ce qu’il affichera après l’affectation de la remise
74
Remise par palier :Il sert à changer automatique le prix d’un article, quand un client veut l’acheter avec
grande quantité qu’on a déjà précisée sa valeur permettant d’effectuer cette remise.
Voici les étapes à suivre pour réaliser ce changement :
Ouvre la session responsable commercial car c’est lui qui a le droit de créer les liste des prix, après clique
sur vente »Listes de prix » Listes de prix »Créer
Après, on va nommer cette liste, On coche la case actif et on clique sur ajouter un élément
75
Après On le donne un nom, une durée de remise et on ajoute une séquence
Cela nous apparaissions cette fenêtre, On sélectionne l’article et la valeur du quantité permettant
d’effectuer la remise puis on saisit la valeur de remise, par exemple ici on a fait une démonstration
d’une remise de 50%, comme on remarque la remise se fait par une opération mathématique qui
soustraire un pourcentage du prix initiale
N.B : Il faut saisir un nombre négatif pour faire la remise
Finalement, on enregistre tout.
76
Maintenant la méthode d’appeler cette remise lors de la création d’un bon de livraison.
Voici le prix normal du produit
Et Quand on changera son liste de prix à notre nouvelle liste de prix
On remarque que son prix unitaire a changé, Alors y a une remise de 50%
77
Conclusion générale etperspectives
Ce Projet de fin d'étude a été une occasion pour nous pour côtoyer le monde des ERP , mais avec plus
de responsabilités. Dans notre projet de fin d’études, le travail a été réalisé au profit d'une société
Grossiste répartiteur des Médicaments. Dans ce cadre, nous avons mis en place un système de gestion
intégrée au sein de la société. Pour ce faire, nous avons commencé par la description des besoins des
futurs utilisateurs du système. Par la suite, nous nous sommes basés sur une étude bibliographique sur
les différentes solutions existantes à savoir les progiciels de gestion intégrée dans le marché afin de
choisir une solution qui respecte les exigences de la société comme la maîtrise des coûts
d’implémentation. OpenERP est la solution élue après une étude comparative entre les différents
progiciels de gestion intégrée. La phase suivante a consisté de paramétrer les modules d’OpenERP
avec les modules fonctionnels de la société. . Coté personnel, travailler dans le monde de l’open source,
et plus précisément sur un PGI tel que OpenERP. Qui m’a permet d'acquérir une large partie des
technologies notamment le langage python et l’utilisation du Framework « OpenObject », et de rejoindre
une communauté mondiale de plus de 1500 individus impliqués eux aussi dans la recherche et le
développement de nouveaux modules, afin de faciliter l’intégration d’une telle solution dans tous les
domaines professionnels et sociaux.

Contenu connexe

Tendances

Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesHosni Mansour
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...mouafekmazia
 
Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]
Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]
Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]Brahim Mouacha
 
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)Ghali Rahma
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Addi Ait-Mlouk
 
Rapport mini-projet Gestion Commerciale D’un Supermarché
Rapport mini-projet  Gestion Commerciale D’un SupermarchéRapport mini-projet  Gestion Commerciale D’un Supermarché
Rapport mini-projet Gestion Commerciale D’un SupermarchéMouad Lousimi
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSFaissoilMkavavo
 
Rapport PFE faten_chalbi
Rapport PFE faten_chalbiRapport PFE faten_chalbi
Rapport PFE faten_chalbiFaten Chalbi
 
Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...
Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...
Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...Arnold Stellio
 
Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...
Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...
Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...Miriam drissi kaitouni
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineMohamed Amine Mahmoudi
 
Rapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed AmineRapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed AmineMohamed Amine Mahmoudi
 
Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiquejihene Ab
 
Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5YounessLaaouane
 
Gestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerpGestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerpHORIYASOFT
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...Mohamed Amine Mahmoudi
 
rapport fin d'etude
rapport fin d'etuderapport fin d'etude
rapport fin d'etudesihem-med
 

Tendances (20)

Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes
 
ERP
ERPERP
ERP
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
 
Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]
Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]
Memoire conception-mise-en-place-tableaux-de-bord-gestion-societe-confection[1]
 
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
Rapport-PFE2013-RahmaGhali-Gestion des Candidatures(Jaas,Primefaces,JFS2,JPA)
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...
 
Rapport mini-projet Gestion Commerciale D’un Supermarché
Rapport mini-projet  Gestion Commerciale D’un SupermarchéRapport mini-projet  Gestion Commerciale D’un Supermarché
Rapport mini-projet Gestion Commerciale D’un Supermarché
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTS
 
Rapport PFE faten_chalbi
Rapport PFE faten_chalbiRapport PFE faten_chalbi
Rapport PFE faten_chalbi
 
Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...
Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...
Memoire de fin d'études pour le diplome de Chef de Projet Informatique et Rés...
 
Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...
Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...
Audit opérationnel - Évaluation des procédures du cycle achats/fournisseurs a...
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
 
Rapport pfe licence
Rapport pfe licenceRapport pfe licence
Rapport pfe licence
 
Rapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed AmineRapport de stage de perfectionnement - Mahmoudi Mohamed Amine
Rapport de stage de perfectionnement - Mahmoudi Mohamed Amine
 
Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatique
 
Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5
 
Gestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerpGestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerp
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
 
rapport fin d'etude
rapport fin d'etuderapport fin d'etude
rapport fin d'etude
 

En vedette

ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEHORIYASOFT
 
Audaxis : BI Project for an Association of Pharmacists
Audaxis : BI Project for an Association of PharmacistsAudaxis : BI Project for an Association of Pharmacists
Audaxis : BI Project for an Association of PharmacistsAudaxis
 
Application web et mobile.potx
Application web et mobile.potxApplication web et mobile.potx
Application web et mobile.potxBelwafi Bilel
 
Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerpHORIYASOFT
 
OpenERP Gestion des Stocks et Approvisionnements
OpenERP Gestion des Stocks et ApprovisionnementsOpenERP Gestion des Stocks et Approvisionnements
OpenERP Gestion des Stocks et ApprovisionnementsAfrica Performances
 
Rapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiRapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiIssaoui Ilyes
 
Y.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIPY.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIPYassine BARBOUCHI
 
Gestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerpGestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerpHORIYASOFT
 
Odoo - Backend modules in v8
Odoo - Backend modules in v8Odoo - Backend modules in v8
Odoo - Backend modules in v8Odoo
 
Service Management with Odoo/OpenERP - Opendays 2014
Service Management with Odoo/OpenERP - Opendays 2014Service Management with Odoo/OpenERP - Opendays 2014
Service Management with Odoo/OpenERP - Opendays 2014Daniel Reis
 
Le processus d'achat et approvisionnement
Le processus d'achat et approvisionnement Le processus d'achat et approvisionnement
Le processus d'achat et approvisionnement Aboubakr Moubarak
 
Improving the performance of Odoo deployments
Improving the performance of Odoo deploymentsImproving the performance of Odoo deployments
Improving the performance of Odoo deploymentsOdoo
 
Comment digitaliser la pharmacie d'officine ?
Comment digitaliser la pharmacie d'officine ?Comment digitaliser la pharmacie d'officine ?
Comment digitaliser la pharmacie d'officine ?Hélène Decourteix
 
L'ERP Compiere choisit par une enseigne de produits de décoration
L'ERP Compiere choisit par une enseigne de produits de décorationL'ERP Compiere choisit par une enseigne de produits de décoration
L'ERP Compiere choisit par une enseigne de produits de décorationAudaxis
 
Retour d'expérience de Laser Loyalty sur le choix de l'ERP Compiere
Retour d'expérience de Laser Loyalty sur le choix de l'ERP CompiereRetour d'expérience de Laser Loyalty sur le choix de l'ERP Compiere
Retour d'expérience de Laser Loyalty sur le choix de l'ERP CompiereAudaxis
 
ait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfeait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfeAddi Ait-Mlouk
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
Cours etude cas_erp_seance2
Cours etude cas_erp_seance2Cours etude cas_erp_seance2
Cours etude cas_erp_seance2Ali Rizki
 

En vedette (20)

ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
 
Audaxis : BI Project for an Association of Pharmacists
Audaxis : BI Project for an Association of PharmacistsAudaxis : BI Project for an Association of Pharmacists
Audaxis : BI Project for an Association of Pharmacists
 
Application web et mobile.potx
Application web et mobile.potxApplication web et mobile.potx
Application web et mobile.potx
 
Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerp
 
OpenERP Gestion des Stocks et Approvisionnements
OpenERP Gestion des Stocks et ApprovisionnementsOpenERP Gestion des Stocks et Approvisionnements
OpenERP Gestion des Stocks et Approvisionnements
 
Rapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiRapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaoui
 
Y.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIPY.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIP
 
Gestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerpGestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerp
 
Odoo - Backend modules in v8
Odoo - Backend modules in v8Odoo - Backend modules in v8
Odoo - Backend modules in v8
 
Service Management with Odoo/OpenERP - Opendays 2014
Service Management with Odoo/OpenERP - Opendays 2014Service Management with Odoo/OpenERP - Opendays 2014
Service Management with Odoo/OpenERP - Opendays 2014
 
Le processus d'achat et approvisionnement
Le processus d'achat et approvisionnement Le processus d'achat et approvisionnement
Le processus d'achat et approvisionnement
 
Improving the performance of Odoo deployments
Improving the performance of Odoo deploymentsImproving the performance of Odoo deployments
Improving the performance of Odoo deployments
 
Comment digitaliser la pharmacie d'officine ?
Comment digitaliser la pharmacie d'officine ?Comment digitaliser la pharmacie d'officine ?
Comment digitaliser la pharmacie d'officine ?
 
L'ERP Compiere choisit par une enseigne de produits de décoration
L'ERP Compiere choisit par une enseigne de produits de décorationL'ERP Compiere choisit par une enseigne de produits de décoration
L'ERP Compiere choisit par une enseigne de produits de décoration
 
Retour d'expérience de Laser Loyalty sur le choix de l'ERP Compiere
Retour d'expérience de Laser Loyalty sur le choix de l'ERP CompiereRetour d'expérience de Laser Loyalty sur le choix de l'ERP Compiere
Retour d'expérience de Laser Loyalty sur le choix de l'ERP Compiere
 
Rapport De PFE
Rapport De PFERapport De PFE
Rapport De PFE
 
ait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfeait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfe
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Cours etude cas_erp_seance2
Cours etude cas_erp_seance2Cours etude cas_erp_seance2
Cours etude cas_erp_seance2
 

Similaire à Openerp pour les grossistes de médicament

Réinventer la communication interne à l'ère collaborative
Réinventer la communication interne à l'ère collaborativeRéinventer la communication interne à l'ère collaborative
Réinventer la communication interne à l'ère collaborativeBernard Gaudin
 
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0Abissa Khadija
 
Module 6 dossier final en pdf
Module 6 dossier final en pdfModule 6 dossier final en pdf
Module 6 dossier final en pdfDeWinterP
 
Open a New Fast-food in Maastricht, The Netherlands? (FRE
Open a New Fast-food in Maastricht, The Netherlands? (FREOpen a New Fast-food in Maastricht, The Netherlands? (FRE
Open a New Fast-food in Maastricht, The Netherlands? (FREDeWinterP
 
La gestion prévisionnelle de l’entreprise : Outil d’aide à la décision
La gestion prévisionnelle de l’entreprise : Outil d’aide à la décisionLa gestion prévisionnelle de l’entreprise : Outil d’aide à la décision
La gestion prévisionnelle de l’entreprise : Outil d’aide à la décisionJadroun Sofiane
 
Guide routard intelligence économique 2014
Guide routard intelligence économique 2014Guide routard intelligence économique 2014
Guide routard intelligence économique 2014polenumerique33
 
Guide du routard de l'intelligence économique - édition 2014
Guide du routard de l'intelligence économique - édition 2014 Guide du routard de l'intelligence économique - édition 2014
Guide du routard de l'intelligence économique - édition 2014 echangeurba
 
Marcille Nicolas Cazamea Raphael
Marcille Nicolas Cazamea RaphaelMarcille Nicolas Cazamea Raphael
Marcille Nicolas Cazamea RaphaelMBA ESG
 
La génération 2.0 chinoise
La génération 2.0 chinoiseLa génération 2.0 chinoise
La génération 2.0 chinoisesvenska33
 
L'analyse du bilan patrimonial
L'analyse du bilan patrimonialL'analyse du bilan patrimonial
L'analyse du bilan patrimonialTaha Can
 
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux fehmi arbi
 
Rapport d'activité Cécile Renault 10,2015
Rapport d'activité Cécile Renault 10,2015Rapport d'activité Cécile Renault 10,2015
Rapport d'activité Cécile Renault 10,2015Cecile Renault
 
Transfert de technologie et attentes des parties prenantes : étude empirique ...
Transfert de technologie et attentes des parties prenantes : étude empirique ...Transfert de technologie et attentes des parties prenantes : étude empirique ...
Transfert de technologie et attentes des parties prenantes : étude empirique ...Laurent GARNIER
 
LA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVID
LA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVIDLA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVID
LA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVIDDavid Fortuné
 
Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...
Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...
Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...HAFID Ait Bihi
 
Global Conference de 2015 synthèse du Livre blanc
Global Conference de 2015 synthèse du Livre blancGlobal Conference de 2015 synthèse du Livre blanc
Global Conference de 2015 synthèse du Livre blancGeorge J. Gendelman
 
Crowdsourcing - Partenaire de l'innovation
Crowdsourcing - Partenaire de l'innovationCrowdsourcing - Partenaire de l'innovation
Crowdsourcing - Partenaire de l'innovationBilel Kouider
 
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdfMrShady1
 

Similaire à Openerp pour les grossistes de médicament (20)

Réinventer la communication interne à l'ère collaborative
Réinventer la communication interne à l'ère collaborativeRéinventer la communication interne à l'ère collaborative
Réinventer la communication interne à l'ère collaborative
 
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
 
Module 6 dossier final en pdf
Module 6 dossier final en pdfModule 6 dossier final en pdf
Module 6 dossier final en pdf
 
Open a New Fast-food in Maastricht, The Netherlands? (FRE
Open a New Fast-food in Maastricht, The Netherlands? (FREOpen a New Fast-food in Maastricht, The Netherlands? (FRE
Open a New Fast-food in Maastricht, The Netherlands? (FRE
 
Bp nespresso efficienza-1
Bp nespresso efficienza-1Bp nespresso efficienza-1
Bp nespresso efficienza-1
 
La gestion prévisionnelle de l’entreprise : Outil d’aide à la décision
La gestion prévisionnelle de l’entreprise : Outil d’aide à la décisionLa gestion prévisionnelle de l’entreprise : Outil d’aide à la décision
La gestion prévisionnelle de l’entreprise : Outil d’aide à la décision
 
Guide routard intelligence économique 2014
Guide routard intelligence économique 2014Guide routard intelligence économique 2014
Guide routard intelligence économique 2014
 
Guide du routard de l'intelligence économique - édition 2014
Guide du routard de l'intelligence économique - édition 2014 Guide du routard de l'intelligence économique - édition 2014
Guide du routard de l'intelligence économique - édition 2014
 
Etude des effets de l'instauration de la loi concernant le droit à l'intégrat...
Etude des effets de l'instauration de la loi concernant le droit à l'intégrat...Etude des effets de l'instauration de la loi concernant le droit à l'intégrat...
Etude des effets de l'instauration de la loi concernant le droit à l'intégrat...
 
Marcille Nicolas Cazamea Raphael
Marcille Nicolas Cazamea RaphaelMarcille Nicolas Cazamea Raphael
Marcille Nicolas Cazamea Raphael
 
La génération 2.0 chinoise
La génération 2.0 chinoiseLa génération 2.0 chinoise
La génération 2.0 chinoise
 
L'analyse du bilan patrimonial
L'analyse du bilan patrimonialL'analyse du bilan patrimonial
L'analyse du bilan patrimonial
 
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
 
Rapport d'activité Cécile Renault 10,2015
Rapport d'activité Cécile Renault 10,2015Rapport d'activité Cécile Renault 10,2015
Rapport d'activité Cécile Renault 10,2015
 
Transfert de technologie et attentes des parties prenantes : étude empirique ...
Transfert de technologie et attentes des parties prenantes : étude empirique ...Transfert de technologie et attentes des parties prenantes : étude empirique ...
Transfert de technologie et attentes des parties prenantes : étude empirique ...
 
LA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVID
LA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVIDLA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVID
LA RÉSILIENCE DES PETITES ET TRÈS PETITES ENTREPRISES FACE À LA COVID
 
Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...
Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...
Projet de fin d'études licence Pro TCF Université Ibn Zohr Agadir {Gestion de...
 
Global Conference de 2015 synthèse du Livre blanc
Global Conference de 2015 synthèse du Livre blancGlobal Conference de 2015 synthèse du Livre blanc
Global Conference de 2015 synthèse du Livre blanc
 
Crowdsourcing - Partenaire de l'innovation
Crowdsourcing - Partenaire de l'innovationCrowdsourcing - Partenaire de l'innovation
Crowdsourcing - Partenaire de l'innovation
 
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
 

Plus de HORIYASOFT

gnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdfgnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdfHORIYASOFT
 
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptxDeployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptxHORIYASOFT
 
Hackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federationHackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federationHORIYASOFT
 
7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entreprise7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entrepriseHORIYASOFT
 
Telemedecine au maroc
Telemedecine au marocTelemedecine au maroc
Telemedecine au marocHORIYASOFT
 
Amélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tmsAmélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tmsHORIYASOFT
 
Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8HORIYASOFT
 
Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016HORIYASOFT
 
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?HORIYASOFT
 
Openerp à la poste maroc
Openerp à la poste marocOpenerp à la poste maroc
Openerp à la poste marocHORIYASOFT
 
Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8HORIYASOFT
 
Gestion Paie marocaine et RH avec openerp
Gestion Paie marocaine et RH avec openerpGestion Paie marocaine et RH avec openerp
Gestion Paie marocaine et RH avec openerpHORIYASOFT
 
Mise en conformité_module_finance_maroc
Mise en conformité_module_finance_marocMise en conformité_module_finance_maroc
Mise en conformité_module_finance_marocHORIYASOFT
 
Gestion flotte acheminement_courrier
Gestion flotte acheminement_courrierGestion flotte acheminement_courrier
Gestion flotte acheminement_courrierHORIYASOFT
 
Odoopriting opendays2014
Odoopriting opendays2014Odoopriting opendays2014
Odoopriting opendays2014HORIYASOFT
 
Projet tempus mission openerp
Projet tempus mission openerpProjet tempus mission openerp
Projet tempus mission openerpHORIYASOFT
 
Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7 Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7 HORIYASOFT
 
Plonegov projet egov
Plonegov projet egov Plonegov projet egov
Plonegov projet egov HORIYASOFT
 
Opentms nextma
Opentms nextmaOpentms nextma
Opentms nextmaHORIYASOFT
 
Strategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabicStrategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabicHORIYASOFT
 

Plus de HORIYASOFT (20)

gnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdfgnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdf
 
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptxDeployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
 
Hackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federationHackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federation
 
7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entreprise7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entreprise
 
Telemedecine au maroc
Telemedecine au marocTelemedecine au maroc
Telemedecine au maroc
 
Amélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tmsAmélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tms
 
Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8
 
Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016
 
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
 
Openerp à la poste maroc
Openerp à la poste marocOpenerp à la poste maroc
Openerp à la poste maroc
 
Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8
 
Gestion Paie marocaine et RH avec openerp
Gestion Paie marocaine et RH avec openerpGestion Paie marocaine et RH avec openerp
Gestion Paie marocaine et RH avec openerp
 
Mise en conformité_module_finance_maroc
Mise en conformité_module_finance_marocMise en conformité_module_finance_maroc
Mise en conformité_module_finance_maroc
 
Gestion flotte acheminement_courrier
Gestion flotte acheminement_courrierGestion flotte acheminement_courrier
Gestion flotte acheminement_courrier
 
Odoopriting opendays2014
Odoopriting opendays2014Odoopriting opendays2014
Odoopriting opendays2014
 
Projet tempus mission openerp
Projet tempus mission openerpProjet tempus mission openerp
Projet tempus mission openerp
 
Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7 Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7
 
Plonegov projet egov
Plonegov projet egov Plonegov projet egov
Plonegov projet egov
 
Opentms nextma
Opentms nextmaOpentms nextma
Opentms nextma
 
Strategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabicStrategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabic
 

Openerp pour les grossistes de médicament

  • 1. Promotion 2013/2014 PROJET DE FIN D’ETUDE Présenté à la faculté des sciences technique Hassan I Licence Professionnel en Information Spécialité : Conception et développement d’application Analyse de Besoin, Adaptation et Intégration d’OPENERP pour la gestion Des Grossistes Répartiteurs des Médicaments Réalisé par : ABAI Oussama JEFFAR Khaoula NOUMANI Zakaria LIALICHI Bassima RHZAOUI Said Encadrer Par : Mr BENGHALEM
  • 2. 1 Remerciements Le présent rapport reflète le fruit des efforts conjugués de plusieurs personnes. Il est alors agréable d’exprimer notre reconnaissance auprès de toutes ces personnes, dont l’intervention au cours de ce projet, a favorisé son aboutissement. Aussi on tient à rendre grâce à nos parents, nos familles et nos amis qui, avec leur soutien et encouragement, on a pu arriver à terme de ce travail. On souhaite remercier aussi les membre de la communauté OpenERP Maroc , pour leur soutien et aide qui nous a été d’une aide très utile durant la période de ce travail . On remercie particulièrement Mr BENGHALEM pour son encadrement, son soutien, ainsi que pour ses conseils instructifs durant toute la période de ce travail. Nos remerciements aussi à l’ensemble des professeurs de IT-Learning pour les efforts fournis pour notre bonne formation. Que les membres de jury trouvent ici l’expression de nos reconnaissances pour avoir accepté de juger notre travail. Que tous ceux et celles qui ont contribué de près ou de loin à l’accomplissement de ce travail trouvent l’expression de nos remerciements les plus chaleureux.
  • 3. 2 Sommaire : PARTIE I: 1 Historique des ERP..................................................................................................................................5 1.1 Un éternité reprise ..........................................................................................................................5 1.2 Actuellement, les ERP......................................................................................................................6 2 Le marché des ERP ..................................................................................................................................8 3 Etude comparative des progiciels de gestion intégrée (PGI)...................................................................10 3.1 Les progiciels de gestion intégrée ..................................................................................................10 3.2 Pourquoi un PGI Open Source ?.....................................................................................................10 3.3 Les critères d’évaluation................................................................................................................10 4 les avantages et les inconvénients d'un ERP ..........................................................................................15 4.1 Avantages d’ERP :..........................................................................................................................15 4.2 Inconvénient des ERP :................................................................................................................15 PARTIE II : 1. Cadre général du projet ........................................................................................................................17 1.1 Présentation générale des"grossistes-répartiteurs" : .....................................................................17 1.2 Problématique :.............................................................................................................................18 1.3 Objectifs du projet.........................................................................................................................18 1.4 Elaboration de Cahier des charges fonctionnel :.............................................................................19 2. Planification du projet :.........................................................................................................................20 3. Etude fonctionnelle :.............................................................................................................................23 3.1 Etude de l’existant :.......................................................................................................................23 3.2 Le système fonctionnel :................................................................................................................23 3.3 Diagramme de contexte :...............................................................................................................23 4. Etude technique :..................................................................................................................................27 4.1 Présentation générale de l’open source.........................................................................................27 4.1 OpenERP .......................................................................................................................................28 5.1 Architecture technique de l’OpenERP : ..........................................................................................28 6.1 Architecture modulaire d’OpenERP ...............................................................................................29 7.1 Modèle vue contrôleur..................................................................................................................30
  • 4. 3 8.1 Gestion électronique des processus métier (workflow)..................................................................31 9.1 Les services Web ...........................................................................................................................32 5. Conception détaillé du projet................................................................................................................33 5.1 Cas d’utilisation.............................................................................................................................33 5.2 Les processus métiers....................................................................................................................37 5.3 Diagramme de séquence ...............................................................................................................38 5.4 Diagramme de classe.....................................................................................................................40 PARTIE III : 6. Technologies mises en œuvre ...............................................................................................................41 6.1 Ubuntu..........................................................................................................................................41 6.2 PostgreSQL....................................................................................................................................42 6.3 OpenERP .......................................................................................................................................43 6.4 Python...........................................................................................................................................48 6.5 XML...............................................................................................................................................50 PARTIE IV : 7 Installation des Modules : .....................................................................................................................52 7.1 Configurer les données de la comptabilité : ...................................................................................53 7.2 Règlement de l’option de comptabilité :........................................................................................54 7.3 Installation Le module du Stock : ...................................................................................................55 7.4 Installation le module d’alerte : .....................................................................................................56 7.5 Installation le limiteur du crédit :...................................................................................................57 7.6 Gestion des ventes : ......................................................................................................................58 8 Gestion des ventes Selon le Cahier des charges :...............................................................................66
  • 5. 4 Partie I : Introduction général d'Open ERP - Historique des ERP - Le marché des ERP - les critères d’évaluation d’un PGI -les avantages et les inconvénients Dans ce chapitre, nous allons faire l’introduction d’Open ERP : Les historiques, le Marché des ERP,les critères d’évaluation d’un PGI, les avantages et les inconvénients d’un ERP.
  • 6. 5 1 Historique des ERP 1.1 Une éternité reprise Durant ces trente dernières années, l'informatique de gestion a subi des bouleversements considérables. Les avancées technologiques du traitement de l’information ont eu des conséquences capitales sur le rôle de l'outil informatique. Si les premières applications ont permis d’automatiser les activités opérationnelles des organisations (gestion de production, gestion commerciale et financière, ressources humaines), aujourd’hui les systèmes d’information prennent en charge des niveaux de gestion de plus en plus stratégiques. Les innovations technologiques ont fait évoluer les architectures informatiques...  les années 60-70 et le mainframe (informatique d'entreprise) : il ne s'agit à cette époque que de gérer des volumes gigantesques de données ; les applications de gestion automatisent les processus opérationnels et répétitifs ; le marché des systèmes informatiques est dominé par quelques grands constructeurs ; les gros systèmes sont propriétaires et centralisent la puissance de traitement.  les années 80 et les mini systèmes (informatique de département) : le marché de l'informatique s'ouvre aux PME ; l'ère des minis permet également à un grand nombre d'utilisateurs d'accéder aux données aux travers d'applications couvrant des besoins plus spécifiques ; l'utilisateur dispose d’une interface texte pour l’interaction avec le système (terminaux passifs).  les années 90 et le client serveur (informatique individuelle) : c'est le plein essor des ordinateurs personnels et de la bureautique, et l'explosion des réseaux et des télécommunications ; le partage de l'information devient le défi majeur ; les applications bureautiques disponibles (traitement de texte et tableur) répondent à des besoins de traitement de l’information jusqu’à présent non pris en compte ; les terminaux passifs sont peu à peu remplacés par des micro- ordinateurs capables de les émuler ; au-delà du réseau local, les applications client-serveur donnent l’occasion de répartir les traitements entre les machines les plus adaptées : les applications bureautiques sur les postes de travail et les applications critiques (ainsi que les bases de données) sur les serveurs ; la connexion entre le réseau local et le site central s’effectue par des liaisons téléinformatiques proposées par l’opérateur institutionnel ; le micro- ordinateur devient nomade grâce aux portables, capable ainsi de se connecter au réseau local ou à distance au système informatique de l’entreprise.
  • 7. 6  les années 2000 aujourd’hui le poste de travail, nomade ou fixe, est connecté au réseau local de l’organisation mais il est aussi ouvert sur l’extérieur grâce à l’Internet ; la communication entre les ordinateurs s'effectue grâce à un ensemble de protocoles normalisés (TCP/IP) ; les technologies de l’Internet deviennent des normes pour la mise en place tant des systèmes informatiques d’entreprise (intranet) que des systèmes informatiques interconnectés avec les partenaires (extranet) ; les applications métier obéissent au standard du web (HTTP, HTML) ; le poste de travail, équipé seulement d’un navigateur, peut accéder par le réseau à l’ensemble des applications (client léger) ; le système d’information de l’entreprise est accessible depuis un poste de travail banalisé mais également depuis de nouveaux équipements comme le téléphone mobile. 1.2 Actuellement, les ERP Le terme ERP provient du nom des méthodes de planification des besoins en composants suivant l'intégration de plus en plus poussée des fonctions de gestion de l'entreprise. Dans les années 1960, Joseph Orlicky a étudié le programme de production de Toyota et a développé le Material Requirements Planning (MRP), puis Oliver Wight et George Plossl ont développé MRP into manufacturing resource planning (MRP2). On peut décomposer l'historique en trois phases :  MRP0, en anglais Material Requirements Planning Zero (littéralement, « planification des besoins en matières 0 ») : méthode de calcul des besoins matière, mise au point en 1965  MRP1, en anglais Material Requirements Planning One : première application industrielle de la gestion intégrée des flux de production, mise au point en 1971 ;  MRP2, en anglais Manufacturing Resources Planning Two (litt. « planification des ressources pour la fabrication 2 ») : en plus du calcul des besoins nets en matières premières et composants, effectue une planification des lancements en tenant compte des capacités des ressources par période ; mise au point en 1979. À partir de 1990 environ, le MRP s'est progressivement étendu à l'ensemble des fonctions de l'entreprise, pour donner l'ERP (E comme entreprise). Dans le cadre du passage informatique à l'an 2000 et du passage à l'euro (dans la zone euro), les progiciels de gestion intégrés ont été une solution pour remplacer les systèmes informatiques vieillissants qui ne pouvaient pas être convertis pour des raisons d'obsolescence technique. C'est ce qui explique l'expansion considérable de ces logiciels dans les années 1990.
  • 8. 7 Les ERP sont des applications dont le but est de coordonner l'ensemble des activités d'une entreprise (activités dites verticales telles que la production, l'approvisionnement ou bien horizontales comme le marketing, les forces de vente, la gestion des ressources humaines, etc.) autour d'un même système d'information. Ils offrent à l'entreprise, une solution globale et transversale. Le principe fondateur d'un ERP est de construire des applications informatiques (paie, comptabilité, gestion de stocks…) de manière modulaire (modules applicatifs indépendants entre eux généralement signés par le même éditeur) tout en partageant une base de données unique et commune. Figure 1: ERP evolution 2000 1990 1980 1970 1960 Extended ERP Enterprise Resource Planning(ERP) Manufacturing Resources Planning (MRP II) Material Requirements Planning (MRP) Inventory Control Packages
  • 9. 8 2 Le marché des ERP Aujourd'hui, le marché des ERP est considéré comme mature. La question de la sélection ne se fait donc pas sur des critères de performance des logiciels mais plutôt selon les besoins spécifiques à l'entreprise. Le marché des ERP compte des centaines de produits différents à l'échelle mondiale, ce qui en fait un marché très complexe, dans lequel seuls les experts naviguent aisément. Pour simplifier les choses, on peut segmenter le marché en trois volets:  Au niveau un, où l'on trouve les systèmes les plus puissants mais aussi les plus coûteux, s'affrontent une poignée de produits très complets, qui sont offerts à l'échelle mondiale par quelques géants spécialisés. Ces systèmes sont surtout pour la grande entreprise, mais on les implante maintenant avec succès dans de nombreuses organisations de moyenne taille. Il faut prévoir un investissement d'au moins 600 000 $, et souvent beaucoup plus, selon le nombre de modules et d'utilisateurs ainsi que la complexité des processus à automatiser.  Au niveau deux, l'on trouve des ERP un peu moins puissants et nettement moins coûteux, qui sont offerts par de nombreux éditeurs à l'échelle mondiale, la plupart du temps avec l'aide de partenaires locaux qui se chargent de la vente, de la mise en place ainsi que de l'assistance à la clientèle. Ces logiciels s'adressent surtout aux entreprises de moyenne taille ou aux filiales des grandes sociétés. De nombreuses organisations plus petites les adoptent maintenant aussi, ce qui permet à celles-ci de concurrencer les plus grandes entreprises et de soutenir leur croissance. Au niveau deux, il faut prévoir un investissement de 100 000 $ à 600 000 $ environ.  Au niveau trois, l'on trouve un grand nombre de petits logiciels, qui méritent ou non l'appellation ERP mais qui offrent néanmoins aux petites entreprises des fonctions utiles, à des coûts raisonnables. Le prix de ces logiciels varie énormément; à ce niveau, un système complet peut coûter entre 5 000 $ et 100 000 $, selon le logiciel et l'envergure du système. Selon des études annuelles menées par des cabinets de conseil et d'études permettent d'observer les parts de marché des grands éditeurs d'ERP propriétaires mondialement.
  • 10. 9 Le Marché mondial des ERP : Le shéma ci-dessous représente la répartition des parts de marché des principaux ERP en 2004 au niveau mondial. SAP dominait avec 40% des parts de marché. Oracle qui avait racheté Peoplesoft détenait donc 22% des parts de marché. Sage était bien placé en particulier avec une clientèle de PME .
  • 11. 10 3 Etude comparative des progiciels de gestion intégrée (PGI) Dans ce chapitre, on va évaluer les solutions de gestion intégrée qui existent dans le marché, afin de choisir un PGI propriétaire ou bien Open Source, alors on va faire une étude comparative basant sur une norme ISO, le PGI choisi doit être adéquat aux besoins de l’entreprise. 3.1 Les progiciels de gestion intégrée Les entreprises d’aujourd’hui doivent rationaliser leur pilotage vu l’évolution progressive et la compétitivité féroce du marché. Pour ce faire, l’utilisation d’un progiciel de gestion intégrée est une nécessité car il centralise, présente les données de façon pertinente et affecte les bons processus aux bons acteurs. L'acronyme PGI signifie "Progiciel de Gestion Intégrée" traduit en anglais par Enterprise Resource Planning (ERP). ERP est le terme le plus couramment utilisé. Un ERP est un progiciel qui assure la gestion automatique de l'ensemble des processus d'une entreprise comme la gestion des ressources humaines, la gestion comptable, la gestion des ventes, l'approvisionnement, la production ou encore du e-commerce. [Wiki, 2012]. Le principe fondateur d'un ERP est l’utilisation des applications informatiques correspondantes aux divers processus métiers de manière modulaire, en partageant une base de données unique et commune au sens logique. L'autre principe, qui caractérise un ERP, est l'usage de ce qu'on appelle un moteur de Workflow. Il permet d’acheminer une donnée qui est enregistrée dans le système d'information(SI), vers les autres modules qui en ont besoin. 3.2 Pourquoi un PGI Open Source ? D'une manière générale, en utilisant un produit open source, on peut s'attendre à des économies de licence en installant un ERP open source. En effet, l'ERP étant un progiciel complexe, les coûts d'intégration et de maintenance représente le coût total de possession de l'ERP. Ainsi, l'économie d'une licence propriétaire représenterait entre 25% et 50% du coût total d’implémentation d’un ERP. Par ailleurs, les solutions open source arrivent à leur maturité. Ce qui fait, les petites et moyennes entreprises (PME) et les très petites entreprises (TPE) peuvent disposer d'un outil de gestion complet au meilleur coût en leur apportant rapidement un vrai bénéfice en termes de compétitivité. 3.3 Les critères d’évaluation Afin d’évaluer la qualité d’un logiciel, nous allons nous référer à la norme ISO 9126, "Technologies de l'Information : Qualités des produits logiciels", qui décrit une série de caractéristiques qualité d’un produit logiciel qui peuvent être utilisées pour spécifier les exigences fonctionnelles et non fonctionnelles des utilisateurs. Elle est composée de six facteurs principaux suivant :
  • 12. 11 Capacité fonctionnelle : Est-ce que le logiciel répond aux besoins fonctionnels exprimés ? C’est un facteur qui mesure l’adéquation des fonctionnalités du logiciel aux besoins prescrits des utilisateurs et sa possibilité d’interaction avec d’autres systèmes. Fiabilité : Est-ce que le logiciel maintient son niveau de service dans des conditions précises et pendant une période déterminée ? C’est l'aptitude du logiciel à maintenir son niveau de service et de fonctionnement pendant une période déterminée. Facilité d'utilisation : Est-ce que le logiciel requiert peu d’effort à l’utilisation ? Ce facteur évalue le degré d’utilisation du logiciel par les utilisateurs finaux. Ce degré révèle l’effort requis pour exploiter et comprendre les concepts logiques et fonctionnels. Rendement / Efficacité : Est-ce que le logiciel requiert un dimensionnement rentable et proportionné de la plate-forme d’hébergement en regard des autres exigences ? Ce facteur mesure le rapport existant entre le niveau de service d'un logiciel, à savoir le temps de réponse de l’exécution des requêtes, et la quantité des ressources utilisées. Maintenabilité : Est-ce que le logiciel requiert peu d’effort à son évolution par rapport aux nouveaux besoins ? C’est l'effort nécessaire pour faire des modifications de données et des tests, ce facteur permet en plus de mesurer la stabilité du logiciel. Portabilité : ce facteur évalue la capacité du logiciel de fonctionner dans différents environnements et sa facilité de migration d’un système à un autre. En se basant sur les facteurs d’évaluation précédents, nous allons entamer une étude comparative entre les logiciels Open source déjà cité. Pour ce faire, nous allons détailler les fonctionnalités métiers offertes par chaque ERP, puis nous allons évaluer les ERP selon chaque facteur pour enfin choisir le plus adéquat pour nos propres besoins. Notant que l’étude se base sur une échelle de six niveaux suivant :  0 : pour mentionner l’inexistence de la fonction.  1 : niveau faible.  2 : niveau passable.  3 : niveau moyen.  4 : niveau bon.  5: niveau excellent. 3.3.1 Profil par capacité fonctionnelle L’échelle fonctionnelle représente un facteur principal dans l’évaluation des différents ERPs choisis vu qu’elle permet de comparer les modules de gestion offerts par le progiciel et les modules 25 précisés dans le cahier de charge de la société. Pour évaluer cette échelle, nous allons nous référer à une étude faite par Smile, le premier intégrateur Européen de l’Open Source. ERPfonction Achats Ventes Comptabilité CRM RH Paies Projet OpenERP 4 4 4 4 4 1 4 ERP5 4 4 5 4 4 4 0 Admepiere 4 4 4 3 0 0 3 CompiereGPL 4 4 5 3 0 0 3 Tableau 1:Evaluation des capacités fonctionnelles des ERPs choisis
  • 13. 12 OpenERP et ERP5 englobe la majorité des fonctions du notre cahier de charge Sauf que ERP5 ne possède pas un module de gestion du projet chose qui présente un avantage pour OpenERP. En contrepartie, ERP5 maitrise le module de la gestion de paie plus qu’OpenERP. Or, la communauté marocaine de ce dernier a pu développer un module de gestion de paie qui tient compte des exigences de la paie marocaine. 3.3.2 Profil par facteur de fiabilité et facilité d’utilisation Pour la fiabilité, à part Compiere qui est très robuste, aucun des autres outils n’offre un degré de fiabilité parfait. La gestion des exceptions et des situations de blocage reste en somme peu satisfaisante en tenant en considération les exigences des utilisateurs. Cette faiblesse est due principalement au manque de maturité des outils open source par rapport au marché. Par ailleurs, la facilité d’utilisation est un point fort d’OpenERP. En effet, l’apprentissage d’OpenERP est assez aisé, car il utilise une logique simple, intuitive et généralisée, contrairement aux autres ERPs. Cette facilité d’utilisation est un point déterminant, car il est très sollicité à la fois par les utilisateurs simples et expérimentés. L’absence d’un manuel d’utilisateur pour Adempiere, Compiere et ERP5 est décevante pour quiconque veuille les tester ou les utiliser. Ceci n’est pas bien entendu le cas d’OpenERP. Ce tableau résume l’évaluation de ces deux facteurs : Nom ERP fonction Fiabilité Facilite de l’utilisation OpenERP 3 4 ERP5 3 3 Adempiere 3 3 CompiereGPL 4 3 Tableau 2:Evaluation des facteurs de fiabilité et de facilite de l’utilisation 3.3.3 Profil par facteur de rendement Afin de détailler ce facteur, on doit tout d’abord déterminer les ressources nécessaires pour le bon fonctionnement du progiciel puis son rendement. L’architecture d’Adempiere est basée sur une JVM (Java Virtuelle Machine) et un serveur d’application JBOSS. Les transactions sont rapides tant que la puissance du son serveur augmente, donc le rendement dépend de cette puissance. Tandis qu’afin de faire tourner Compiere, il a besoin d’un serveur dédié à lui, de 2GO de RAM et d’un processeur puissant pour offrir le même service ce qui explique son faible rendement.
  • 14. 13 Pour ERP5, il ne demande pas de ressources énormes, un seul serveur de base est suffisant pour fournir des transactions rapides ce qui prouve son excellent rendement. Alors qu’OpenERP même s’il ne demande d’un serveur de base, les transactions sont lentes sur machine distante et rapides en local Nom ERP fonction Rendement OpenERP 3 ERP5 5 Adempiere 3 CompiereGPL 3 Tableau 3:Evaluation du facteur de rendement des ERPs choisis. Selon ce facteur, Adempiere, Compiere et OpenERP sont à égalité. Si OpenERP permet une économie très remarquable en termes de ressources matérielles, les transactions effectuées par Adempiere ou Compiere sont plus rapides quand il s’agit d’utiliser des machines distantes. ERP5 est nettement plus rentable que les autres PGI ceci est dû au fait qu’il ne demande pas de ressources énormes pour faire tourner plusieurs postes clients. 3.3.4 Profil par facteur de Maintenabilité Les ERPs choisis sont tous développés selon l’approche orientée objet. Cette approche offre un accès rapide aux données et leurs dépendances, et par la suite une facilité de modification de données. En effet, les données dépendantes sont structurées dans un objet qui possède des méthodes qui lui donne la possibilité d’interagir avec les autres objets, par la suite avec d’autres données. Par ailleurs, OpenERP est le plus stable. En effet, une nouvelle version stable est disponible chaque 6 à 8 mois. Nom ERP fonction Maintenabilité OpenERP 4 ERP5 2 Adempiere 4 CompiereGPL 4 Tableau 5:Evaluation de facteur de maintenabilité des ERPs choisis 3.3.5 Profil par facteur de portabilité Pour évaluer ce facteur il suffit de présenter les différents environnements sur lesquels les différents ERPs choisis peuvent fonctionner. Adempiere peut tourner sur tous les systèmes d’exploitation et utilise les bases de données PostgreSQL et Oracle. OpenERP, quant à lui, supporte les systèmes d’exploitation Windows et Linux et PostgreSQL pour sa base de données. Pour Compiere peut fonctionner sur tous les systèmes d’exploitation et fait appel à une base de données Oracle. Tandis pour ERP5, il est possible de l'installer sur RedHat mais aucune version Windows ne nous semble disponible selon mes recherches webographies.
  • 15. 14 Nom ERP fonction Potabilité OpenERP 3 ERP5 5 Adempiere 3 CompiereGPL 3 Tableau 5: Evaluation de facteur de portabilité des ERPs choisis 3.3.6 Profil par type de l’entreprise Si on considère les aptitudes fonctionnelles particulières des ERP évalués ainsi que leurs autres caractéristiques comme le degré d'ouverture de l'éditeur, la qualité de finition, la complexité ou simplicité des extensions, on peut déduire un profil type d'utilisation, selon le secteur d'activité, mais aussi selon la taille et le chiffre d'affaire de la société Nom ERP Secteur Taille d’entreprise Chiffre d’affaire par million d’euros Distribution Service Industrie X<5 5<x<10 10<x<50 50<x<50 X>250 X<5M 5M<X<500M OpenERP 4 5 5 3 4 5 5 4 4 5 ERP5 4 4 4 3 4 5 4 4 4 4 Adempiere 5 3 3 1 2 5 5 3 4 3 Compiere 5 4 3 2 2 5 5 5 5 3 Tableau 6:Evaluation par type de l’entreprise des ERPs choisis On Remarque que pour les sociétés de service comme Eone Group et dont les employés sont une vingtaine du personnel et le C.A est inférieure à cinq millions d’euros, OpenERP est le progiciel le plus adapté. Une analyse des résultats de l’étude s’avère indispensable afin de dégager les points favorisants l’un des PGI par rapport à l’autre parmi les quatre solutions. Cette analyse doit tenir en compte les contraintes imposées par l’environnement et les besoins de la société. Vu que l’environnement de la société dédié à la solution de gestion intégrée est un serveur Windows, alors ERP5 est entièrement éliminé. Pour les ERPs restants, l’ERP qui répond à la majorité des fonctionnalités déjà définies dans le cahier de charge est OpenERP. En effet, il est le plus compatible avec le secteur d’activité de la société, sa taille et son chiffre d’affaire. De plus, l’évaluation d’OpenERP selon les critères de la norme ISO 9126 est bonne dans sa totalité. Donc, après cette étude, la solution choisie est le progiciel de gestion intégrée OpenERP.
  • 16. 15 4 les avantages et les inconvénients d'un ERP 4.1 Avantages d’ERP : L’ERP est un progiciel de gestion intégré donc c’est l’unique outil qui permettra de mettre en relation les différentes fonctions de l’entreprise. Cette centralisation globale des données est très intéressante à plusieurs niveaux :  Les redondances de saisie sont inexistantes, ce qui se traduit par une meilleure fiabilité des données par rapport à un "système traditionnel" où les systèmes d’information sont indépendants entre eux…  Les différentes fonctions de l’entreprise disposent des mêmes données et en temps réel ce qui est un avantage certain en terme de délai pour répondre aux besoins des clients.  L’ergonomie et la logique d’utilisation du progiciel est la même quelque soit le module intégré. La procédure de formation des différents collaborateurs est donc très simplifiée.  Une formation, à l’issu de laquelle les différents collaborateurs emploieront un vocabulaire commun au système et ce, quelque soit la fonction de l’entreprise dans laquelle ils travaillent.  Les coûts de fonctionnement sont diminués par rapport à un "système traditionnel". Les traitements sont synchronisés automatiquement, la maintenance corrective est assurée par l’éditeur.  Le progiciel permet également de gérer plusieurs organisations, devises, langues… 4.2 Inconvénient des ERP : Le principal avantage d’un système ERP comme nous l’avons vu dans la catégorie "Les avantages" est la centralisation des informations pour un partage efficace au sein d’une organisation. Cependant, cet avantage peut être également un gros inconvénient. Effectivement, c’est toute l’organisation qui est bloqué en cas de panne du système, ce qui est préjudiciable à toutes les fonctions de l’entreprise. Ce n’est pas le seul inconvénient d’un système ERP, nous pourrons également noter les points suivants  La mise en place d’un ERP est coûteuse financièrement mais également en temps (difficile à mettre en place).  Un ERP ne couvre pas forcément tous les besoins d’une entreprise. En effet, il peut être nécessaire de développer des fonctionnalités supplémentaires pour des besoins spécifiques de l’organisation (processus). En revanche, un ERP met à disposition de l’entreprise des fonctionnalités dont elle ne se servira probablement jamais.  L’intégration d’un ERP dans l’organisation peut générer un sentiment de perte de la maîtrise du système d’information par rapport à un "système traditionnel" où toutes les fonctions de l’entreprise sont indépendantes entre elles.  La mise en place d’un PGI sous-entend également une dépendance envers l’éditeur.  Les premiers jours, les premiers mois de fonctionnement d’un ERP dans une entreprise ne sont pas évidents car le fonctionnement de l’organisation est complètement différent. Une baisse de la productivité est donc à prévoir dans les premiers temps pour la réorganisation des méthodes de travail avec le nouveau système d’information.
  • 17. 16 Partie II : Contexte général du projet - Cadre général du projet - Planification du projet Dans ce chapitre, nous allons faire la planification et la réalisation d'un projet informatique : Installation d'une solution ERP au sein d'une entreprise
  • 18. 17 1. Cadre général du projet 1.1 Présentation générale des"grossistes-répartiteurs" : La répartition pharmaceutique est le nom donné dans certains systèmes de santé au système de grossistes des médicaments, appelés "grossistes-répartiteurs", qui se situent à l'interface entre les laboratoires pharmaceutiques et les officines de pharmacie. Les répartiteurs achètent aux laboratoires pharmaceutiques, gèrent et stockent dans leurs établissements répartis sur l’ensemble du pays (190 sites) livrent et mettent à disposition des officines plus de 25 000 références de médicaments (soit deux tiers des présentations existantes), dans un délai de 24 heures maximum. Trois quarts des médicaments sont vendus, au maximum, une fois par mois par officine. Cette donnée à elle seule justifie ainsi le métier des répartiteurs : sans ce service, seulement quelques pharmacies pourraient se permettre d'avoir en stock certains médicaments peu prescrits. En effet, au Maroc, on dénombre plusieurs laboratoires fabricants et autant de fabricants d’accessoires et de dispositifs paramédicaux. Les pharmacies devraient donc théoriquement négocier leurs achats auprès des fournisseurs. On comprend bien que cela est impossible, et pourtant les produits sont tous, toujours disponibles dans toutes les officines où qu’elles soient : c’est là que le rôle des grossistes répartiteurs prend tout son sens dans le circuit de distribution du médicament. Ces sociétés de la logistique pharmaceutique gèrent et mettent à la disposition des pharmacies une collection de plus de 20 000 références dont 7 300 spécialités pharmaceutiques. Les principaux grossistes répartiteurs au Maroc sont : o SOCIETE DIPHARM o SOCIETE DISMEDIC o SOCIET G.P.M. o SOCIETE MD5
  • 19. 18 1.2 Problématique : Les "grossistes-répartiteurs" marocaines souhaitent s’ouvrir sur les nouvelles technologies et les utiliser pour avoir un meilleur rendement, et ainsi intégrer des solutions de gestion complètes, paramétrables et flexibles pour la gestion de tout ce qui se rapporte au domaine de la pharmacie. Notre projet de fin d’études s’inscrit dans le cadre d’une solution optimisé de la gestion des ventes dans une des sociétés "grossistes-répartiteurs" marocaines, à l’aide de l’ERP open source dans lequel on se base pour adapter nos besoin. Le processus métier de la prise de commande jusqu’à la facturation passant par la livraison, se passe comme suite : -Un agent commercial passe des appels téléphoniques sur des plages horaires séparer durant la journée pour prendre les commandes des médicaments souhaité de la part des pharmaciens (agent ou administrateur) dans toute la région ,par la suite il vérifie la disponibilité et confirme la vente pour pouvoir généré un bon de livraison qui sera imprimé dans un emplacement dans le magasin ,ensuite un agent de préparation de commande revoie le bon de livraison , prépare et emballe la commande pour qu’elle soit enfin livré à la pharmacie en question . 1.3 Objectifs du projet Le travail demandé est d’adapter un progiciel libre, OpenERP, aux besoins des "grossistes-répartiteurs", en essayant de rajouter de nouvelles fonctionnalités que les autres solutions ne peuvent offrir. Afin de garantir une modernisation des services des officines, il est indispensable d’adopter les nouvelles technologies et les exploiter pour en tirer le meilleur profit. Les PGI sont connus pour leur intégration des principales fonctions nécessaires à la gestion des flux et procédures de l’entreprise (comptabilité, achats, ventes…), tous ces outils accèdent à des ressources communes, en particulier des bases de données. Parmi les autres avantages des PGI, c’est qu’ils sont conçus de telle sorte qu'un "simple" paramétrage suffit à les adapter à l'organisation de l'entreprise. Il n'est normalement pas nécessaire d'effectuer des développements spécifiques, sauf en cas de nécessité, lorsque ce paramétrage ne permet pas de prendre en compte des particularités liées au métier des officines.
  • 20. 19 Donc, le système d’information à développer aura pour objectifs : - Objectifs globaux :  Disposer d’un outil de gestion complet, qui contribuera à l’évolution des "grossistes-répartiteurs".  Disposer d’un outil dont le support ne nécessite pas trop de ressources, et qui pourra communiquer avec d’autres applications sans complication - Objectifs spécifiques :  Permettre une gestion des éléments de bases, comme les clients, les fournisseurs et les articles  Permettre d’effectuer des ventes auprès des pharmacies, où il est possible d’éditer des devis, de créer des bons de commande et vérifier la disponibilitédes produits et imprimer un bon de livraison .  Permettre d’effectuer des achats auprès des fournisseurs, où il est possible d’éditer des devis, de créer des bons de commande et de recevoir les produits  Permettre une gestion de stock efficace, avec la possibilité de faire des inventaires physiques et de voir l’état des stocks n’importe quand ainsi que des alertes pour signalé la rupture d’un produit dans le stock.  Permettre le suivi des clients, voir leur situation en tout moment, et régler leur crédit s’ils en ont.  Permettre de gérer les produits à Quotta  Permettre de gérer les remises sur les lignes de commande, sur le nombre d’unité commandé, ainsi que sur le total de la commande.  Permettre une facturation groupée par client à la fin de chaque mois.  Limité le crédit pour chaque client .  Enfin, avoir des statistiques concernant ces points cités auparavant 1.4 Elaboration de Cahier des charges fonctionnel : Afin de mener à bien notre projet il est bien donc nécessaire de faire une l’analyse préliminaire des besoins et de faire une liste des différentes fonctionnalités à mettre en oeuvre. Les fonctionnalités requises sont présentées dans le tableau ci-dessous :
  • 21. 20 Objectif Fonctionnalité Gestion de base - Gestion des clients - Gestion des fournisseurs - Gestion des utilisateurs - Gestion des produits Gestion des ventes - Consulter la liste des clients - Gérer les devis - Gérer les bons de commandes - Gérer les bons de livraison des produits - Gérer les paiements Gestion des Achats et stocks - Consulter la liste des fournisseurs - Gérer Les demandes de prix - Gérer les devis de fournisseurs - Gérer les bons de commandes - Gérer les bons de réceptions des produits - Gérer les paiements - Vérification des stocks Les rapports - Imprimer les rapports (bon de commande) - Imprimer les rapports (facture) - Imprimer les rapports(bon de livraison) - Imprimer listes des produits Statistiques et tableau du bord - Consulter les produits du stock - Distribution mensuelle des ventes par client - Distribution détaillée des ventes par produit / client - Inventaire physique des produits Tableau 7:Liste des fonctionnalités requises 2. Planification du projet : La planification consiste à prévoir le déroulement du projet tout au long des phases constituant le cycle de vie prévu. C’est ainsi qu’on peut diviser le projet de mise en place d’une solution de gestion intégrée en quatre grandes parties : Description et l’analyse des besoins spécifiques : les objectifs de cette phase sont de bien cerner le sujet d’une part, et de délimiter le périmètre du projet d’autre part au niveau fonctionnel.
  • 22. 21 L’étude comparative des solutions existantes sur le marché: cette étude doit aboutir au choix d’une solution de gestion intégrée tout en prenant en considération l’environnement de l’entreprise et son cahier de charge. La mise en production du progiciel de gestion intégrée (PGI): L’objectif de cette phase est de construire le système PGI cible, puis d’en vérifier la fiabilité des différents traitements. Les tâches typiques associées à cette étape sont :  La personnalisation et le paramétrage.  La mise à jour de la base de données.  La fermeture des trous fonctionnels  La mise à jour finale de la documentation du système final. La bascule : L’objectif de cette phase est le démarrage opérationnel du progiciel sur le site. Les tâches typiques associées à cette étape sont :  La formation des utilisateurs finaux et la documentation des utilisateurs.  Le pilotage : Test d’intégration sur la base des processus et validation des modes opératoires par les utilisateurs.
  • 23. 22 Partie III: Etude fonctionnelle et technique - étude fonctionnelle et technique - conception détaillé du projet. Dans ce chapitre, nous allons décrire la méthodologie de conception et les besoins de la société, par la suite nous allons les analyser en utilisant le formalisme UML.
  • 24. 23 3. Etude fonctionnelle : Avant de spécifier les besoins il est nécessaire de réaliser une étude de l’existant. L’étude de l’existant est une étape clé dans la réalisation de n’importe quelle application informatique, quel que soit le domaine concerné. Il s’agit d’une étude permettant de comprendre la problématique du projet et de détecter les avantages et inconvénients des solutions proposées actuellement sur le marché afin d’en profiter pour la réalisation de notre projet. 3.1 Etude de l’existant : La société repose principalement sur trois divisions qui assurent son fonctionnement normal qui sont : le service des ventes, le service des entrepôts et enfin le service de gestion comptable. En effet, Le service des ventes, quant à lui, est constitué essentiellement de commerciaux. Chaque commercial dispose d’une base de données enregistrée sous forme de fichiers Excel, et qui contiennent ses clients. Ce processus demande une gestion pointue des suggestions, des avis voire des réclamations des clients, Ensuite le service des entrepôtsest dédié à la gestion des articles et les livraisons, enfin la gestion comptable assurée généralement un logiciel externe. Cependant, la société se trouve dans la nécessité de léguer l’élaboration du journal mensuel et du bilan annuel à une expertise externe. 3.2 Le système fonctionnel : L’ensemble des activités de la société est géré par des traitements manuels ou bien par le biais des applications diversifiées tout en utilisant des supports papiers. Les besoins de la société s’articulent sur les modules fonctionnels suivantes : la gestion des ventes, la gestion comptable, la gestion des entrepôts, 3.3 Diagramme de contexte : Le domaine étudié : Conception et réalisation d’une application de gestion intégrée au sien d’une société "grossistes- répartiteurs". Les activités internes du domaine :  Gestion des ventes  Gestion des achats et stocks  Gestion de la relation clientèle  Gestion de la comptabilité     
  • 25. 24 Les acteurs du système  Sur le diagramme de contexte, on constate que ce système est en interaction avec des divers acteurs tel que : Acteur Description Le commercial Peut créer un dossier pour ces clients comme il peut le mettre à jour, il a le droit de visualiser l’ensemble des clients de la société. D’autre part, le commercial peut créer les commandes pour réaliser une opération de vente. Le responsable commercial Assure le suivi des ventes faites par les commerciaux, et gère les factures. Il peut aussi effectuer les mêmes opérations que le commercial. De plus, il valide l’ensemble des bons de commandes et il gère l’ensemble des articles. Directeur Supervise l’ensemble des activités et il possède les mêmes droits d’utilisation comme tous les acteurs du système. Le magasinier Peut créer un dossier pour les produits comme il peut le mettre à jour. D’autre part, le commercial peut créer les commandes pour réaliser une opération d’achat Le responsable des achats Assure le suivi des achats et gère les factures en les créant et les mettant à jour. De plus, il valide l’ensemble des bons de commandes d’achats et il gère l’ensemble des articles achetés. Administrateur Superviseur et administrateur système. Tableau : Liste des fonctionnalités requises
  • 26. 25 Diagramme 1: Diagramme de contexte.   Analyse des cas d’utilisations  Description des scénarios  La gestion des partenaires:  Création d'un Dossier partenaire: Cette fonction permettra de créer le dossier d'un partenaire lors de sa première opération (vente, achat…), les données peuvent être complétés ultérieurement et sont toujours modifiables. Ce dossier contient : Le Nom, le Prénom, le sexe, La Date de naissance, l'adresse, le code postal, la ville, la profession, les N° de téléphone…. Accès / modification d'un Dossier partenaire : Cette fonction permet de rechercher et d'accéder au dossier d’un partenaire ainsi que le modifier ou le compléter si nécessaire. Suppression d'un Dossier partenaire : En cas de mauvaise manipulation, cette fonction permet de supprimer le dossier partenaire après confirmation.
  • 27. 26 Gestion de stock: Ce module permet de gérer l'ensemble des données nécessaires concernant les produits. Ajouter un produit : L’application permet d'ajouter un produit dans la banque de donnée en saisissant la description relative au produit (Nom, Quantité, Nature, Type, ...) Rechercher un produit : L’application permet la recherche d'un produit. La recherche est effectuée par la saisie d'une de ses caractéristiques citées ci-dessus. Supprimer un produit : L’application effectue la suppression d'un produit donné par la personne autorisée. Une Confirmation est demandée. Signaler un produit en fin de stock : L’application permet notamment de prévenir l'utilisateur quant à la diminution du stock relatif au produit. Gestion des droits d'accès : Création d’utilisateurs Cette fonction permet de créer les différentes fiches du personnel à utiliser le système. Il suffit de saisir dans le module les données correspondant à l'identification de l'utilisateur concerné Nom, Login, Mot de passe… Modification : Le système permet de modifier toutes les données relatives à l'utilisateur. Suppression : le système permet également de supprimer un utilisateur dans le cas où il n'est Plus habilité à utiliser l'application. Création de groupes d'utilisateurs : Le système permet de créer un groupe selon la fonction de l'utilisateur et de spécifier les droits d'accès pour chaque groupe. Modification : cette fonction permet de modifier les droits d'accès d'un groupe. Suppression : Le système permettra de supprimer un groupe d'utilisateur préalablement crée.
  • 28. 27 Facturation et paiement: Sauf disposition légale spécifique, toute prestation fournie par l’entreprise doit faire l’objet d’une facturation et d’une mise en paiement par le partenaire (client ou fournisseur). La facture étant établie conformément à la réglementation de la tarification applicable aux entreprises. Créer la facture : Il permet de créer automatiquement la facture du partenaire dès son admission contient toutes les informations. Rechercher : Cette fonction permet de chercher la facture d'un partenaire donné par le nom et prénom ou d’autre information administrative. Régler une facture : Cette fonction permet de régler la facture en précisant le mode de règlement chèque ou espèce. Gestion des ventes et achats: Ce module permet de gérer l'ensemble des données nécessaires concernant les ventes Cree un devis : L’application permet d’établir un devis dans un premier temps qui doit être suivi par le système à l’aide d’un workflow pour qu’il arrive à la facturation. Rechercher une commande : L’application permet la recherche d’une commande. La recherche est effectuée par la saisie d'une de ses caractéristiques à savoir l’état, date, client, fournisseur,... Annuler une commande : L’application permet d’annuler une commande donnée par la personne autorisée. Une Confirmation est demandée. Suivi des commandes : L’application permet notamment de suivi toutes les commandes du système payé ou non payé. Serveur d’email Le système doit configurer un serveur mail qui assure le flux de communication entre les entités d’entreprise, ainsi que les partenaires. 4. Etude technique : 4.1 Présentation générale de l’open source L’acronyme ERP signifie « Enterprise Ressource Planning » traduit en français par Progiciel de Gestion Intégré ou PGI. C’est un progiciel qui permet de gérer l’ensemble des processus d’une entreprise intégrant l’ensemble de ses fonctions comme la gestion des ressources humaines, la gestion financière et comptable, l’aide à la décision, la vente, la distribution, l’approvisionnement, la production ou encore le e-Commerce. On distingue deux types d’ERP : les ERP propriétaires, édités par des sociétés, ce qui implique l’achat d’une licence, et les ERP open source qui sont « gratuits ». Dans notre projet Nous nous intéressons à la catégorie des ERP open-source et plus particulièrement à OPENERP c’est grâce à une étude comparatif des ERP open source on a fait le choix de l’OpenERP [Wikipédia].
  • 29. 28 4.1 OpenERP Anciennement connu sous le nom Tiny ERP, signifiant la fourmi de l’Enterprise Resource Planning) est un progiciel intégré de gestion ouvert, libre de droits comprenant les ventes, la gestion de relation client (CRM), la gestion de projet, la gestion d'entrepôt, la production, la comptabilité et les ressources humaines. OpenERP a trois composants séparés : le serveur openerp-server qui stocke ses données dans une base postgresql, le client openerp-client qui s'installe sur le poste de l'utilisateur et le serveur web openerp-web qui permet une utilisation depuis un navigateur. Ces trois composants communiquent par les protocoles xml-rpc et net-rpc. Le logiciel est basé sur une forte architecture MVC, des flux de travail flexibles, une interface-utilisateur graphique dynamique, une interface XML-RPC, et un système personnalisable de comptes rendus avec une intégration pratique d'OpenOffice.org. Dans la classification des logiciels, OpenERP, comme tout autre PGI sur le marché est un package destiné, a priori, à tous les secteurs, à toutes les fonctions, les adaptations nécessaires se faisant par paramétrage. Il dispose de forts arguments commerciaux pour séduire les dirigeants, Cette offre séduisante par sa qualité et sa cohérence se révèle à l’usage plus risquée que l’on avait pu l’imaginer : elle ne peut être efficace que si l’on accepte les contraintes qu’elle impose. Sa mise en oeuvre comporte des difficultés et des pièges. Avantages  Éditeur très dynamique  Communauté dynamique et expérimentée  Périmètre fonctionnel inégalé avec ses quelques 500 modules et des nouveaux modules tous les mois.  Conception très intelligente. Souvent jusqu'à 10 fois moins de code que les ERP en Java pour offrir les mêmes fonctionnalités.  Interface web très compétitive.  Vrai ORM qui fait le pont entre la base relationnelle et le code objet proche des spécifications fonctionnelles.  Tout le data model et les méthodes métier sont nativement exposés en web services, c'est un gage d'interopérabilité facile.  Moteur BPM intégré très efficace.  Grand souplesse générale, notamment grâce à la scriptabilité des rapports.  Les coûts d'intégration les plus faibles 5.1 Architecture technique de l’OpenERP :  o Architecture Client/serveur :  Open ERP est basé sur une architecture client/serveur. Le serveur et le client communiquent via le protocole XML-RPC. C’est un simple protocole qui permet au client de faire des appels aux Procédures. Une fois la fonction est appelée, ses arguments et ses résultats sont envoyés par le Protocole http, eux- mêmes sont encodés par le langage XML.
  • 30. 29 OpenERP est couplé à une base de données PostgreSQL. De plus, il est compatible au pack Open Office, et aussi avec des outils de reporting (ReportLab) pour produire des rapports en PDF ou en HTML. La logique d’openERP est entièrement du côté serveur. La tâche du client se résume à demander les données (formulaire ou listes) au serveur et de les renvoyer. Avec cette approche, presque tout le développement est fait du côté serveur. Ce qui rend OPENERP plus simple au développement et à la maintenance. L’opération client est très simple. Quand un utilisateur exécute une action (sauvegarder un formulaire, ouvrir un menu, imprimer, ...) il envoie cette action au serveur. Le serveur envoie alors la nouvelle action pour s'exécuter côté client. Il y a trois types d'actions :  Ouvrir une fenêtre (formulaire, listes)  Imprimer un document.  Exécuter un wizard. Architecture Client-Serveur d’open ERP 6.1 Architecture modulaire d’OpenERP Un module OpenERP est la définition, dans le «Framework» OpenERP, d’une gestion informatisée d’un domaine. Cette architecture n’est pas propre à open ERP. Elle est en fait partagée par tous les ERP. Il s’agit de la faculté de construire des applications informatiques de manière modulaire (modules indépendants entre eux) tout en partageant une base de données unique. Ceci apporte une importance significative puisque les données sont maintenant standardisées et partagées. Ce qui élimine les saisies multiples et évite l'ambiguïté des données de même nature. L’architecture modulaire d’open ERP lui permet de couvrir plusieurs domaines illustrés dans la figure ci-dessous :
  • 31. 30 Architecture modulaire d’open ERP  Structure d’un module OpenERP Structure d’un module OpenERP Python 7.1 Modèle vue contrôleur Un (MVC) est une architecture de modèles utilisée en génie logiciel. Dans des applications complexes qui présentent des lots de données aux utilisateurs, on souhaite souvent séparer les données (modèle) et l'interface utilisateur (vue), de sorte que les changements à l'interface utilisateur n'affectent pas le traitement des données, et que les données peuvent être réorganisées sans changer l'interface utilisateur. Le MVC résout ce genre de problème en découplant l'accès des données et la logique des
  • 32. 31 applications de la présentation des données et de l'interaction utilisateur, en introduisant un composant intermédiaire : « le contrôleur ». Dans open ERP, on peut appliquer cette sémantique de Model View Controller avec :  Model : les modèles sont les objets déclarés dans OpenERP. Ils sont également des tables PostgreSQL.  View : les vues sont définies en fichiers XML dans OpenERP.  Controller : le contrôleur est les classes Python qui contrôle OpenERP. Modèle vue contrôleur OpenERP offre un cadre de développement, c’est à dire des «services» techniques informatiques:  Un serveur de base de données objet pour représenter et mémoriser les objets de gestion et les rendre accessible via le réseau.  Un "workflow" qui contrôle l’évolution des objets suivant une procédure.  Des formulaires et écrans pour l’interaction avec l’utilisateur.  Des états imprimables des objets. 8.1 Gestion électronique des processus métier (workflow) On appelle workflow la modélisation et la gestion informatique de l'ensemble des tâches à accomplir et des différents acteurs impliqués dans la réalisation d'un processus métier (aussi appelé processus opérationnel ou bien procédure d'entreprise). Le terme de « workflow » pourrait donc être traduit en français par « gestion électronique des processus métier ». De façon plus pratique, le workflow décrit le circuit de validation, les tâches à accomplir entre les différents acteurs d'un processus, les délais, les modes de validation, et fournit à chacun des acteurs les informations nécessaires pour la réalisation de sa tâche. Pour un processus de publication en ligne par exemple, il s'agit de la modélisation des tâches de l'ensemble de la chaîne éditoriale. Il permet généralement un suivi et identifie les acteurs en précisant leur rôle et la manière de le remplir au mieux ,[Wikipédia].   
  • 33. 32  But  Description de l'évolution du document dans le temps  déclenchement automatique d'actions si certaines conditions sont remplies  gestion des rôles de l'entreprise et les étapes de validation  gestion des interactions entre les différents objets / modules 9.1 Les services Web Un service web est un programme informatique permettant la communication et l'échange de données entre les applications et systèmes hétérogènes dans des environnements distribués. Il s'agit donc d'un ensemble de fonctionnalités exposées sur internet ou sur un intranet,  Pourquoi faire ? • Décomposition d'une application en briques fonctionnelles ou unités logiques applicatives. • Composant réutilisable fournissant des données et des services à d’autres Applications. • Facilite l'interopérabilité des différents modèles de composants en interne comme en externe. • Utilisation et intégration très facilitées de composants métiers de partenaires • Agrégation de plusieurs services de métiers différents sur un même site (horaires/réservation train, assurance, hôtel...)  Invocation o Il existe deux grands standards de services web, tous deux basés sur XML : XML-RPC (XML RemoteProcedure Call), le plus ancien, fonctionnant sur un principe procédural et sans gestion des états. o SOAP (Simple Object Access Protocol), fonctionnant selon le modèle objet. Quel que soit le standard utilisé, le principe de programmation est le même : l'appel de méthode distante est réalisé grâce à une bibliothèque cliente qui transmet la demande au fournisseur de service en la formatant en XML de manière transparente; au niveau du serveur une bibliothèque serveur décode la requête, le serveur fait ses traitement, puis répond grâce à cette même bibliothèque; la bibliothèque client décode enfin la réponse afin qu'elle puisse être utilisée par l'application client.   XML-RPC XML-RPC est un protocole RPC (Remoteprocedure call), une spécification simple et un ensemble de codes qui permettent à des processus s'exécutant dans des environnements différents de faire des appels de méthodes à travers un réseau. XML-RPC permet d'appeler une fonction sur un serveur distant à partir de n'importe quel système (Windows, Mac OS X, GNU/Linux) et avec n'importe quel langage de programmation. Le serveur est lui- même sur n'importe quel système et programmé dans n'importe quel langage. 
  • 34. 33 Un message XML-RPC est une requête HTTP POST dont le corps est formalisé en XML La réponse de la procédure distante est également au format XML XML RPC services 5. Conception détaillé du projet 5.1 Cas d’utilisation 5.1.1 Administration du système : L’administration complète du système est assurée par l’administrateur. Celui-ci se charge de contrôler l’accès des utilisateurs et de gérer l’ensemble des fonctionnalités du système. Ceci est modélisé par le diagramme de cas d’utilisation suivant : Diagramme de cas d’utilisation d’administration du système
  • 35. 34 Authentification : avant de se connecter au système, chaque acteur doit être identifié par un login et un mot de passe afin d’avoir les permissions d’accès au système. Gérer les comptes et les droits des utilisateurs : ce cas permet à chaque utilisateur du système d’avoir son compte qui comporte l’ensemble des processus métiers dont lesquels il intervient. Comme, il attribue les droits d’accès à l’utilisateur afin de garantir la fiabilité du système. Gérer les fonctionnalités du système : ce cas permet à l’administrateur de gérer la totalité des fonctions métiers du système, comme il peut paramétrer des nouvelles fonctionnalités en cas de besoin. 5.1.2 Diagramme de cas utilisation global de La gestion des ventes La gestion des ventes consiste à gérer l’ensemble d’activités des commerciaux, et assurer le suivi des commandes des clients tout en gérant les factures et les dossiers des clients. Les utilisateurs sont tenus d’utiliser le système dans la réalisation de leurs tâches qui sont accordées. Ce diagramme regroupe les fonctionnalités globales que doit assurer le système vis-à-vis la gestion des ventes, et par la suite on va détailler ce diagramme pour bien éclaircir l’utilité de chaque cas d’utilisation.
  • 36. 35 5.1.3 Diagramme de cas utilisation détaillée de La gestion des ventes Description des cas d’utilisation : Gérer les clients : ce cas d’utilisation permet aux acteurs de créer et mettre à jour les dossiers liés aux clients, comme il doit assurer le suivi des clients, comme il permet d’associer les contacts au client si le client est une société. Gérer les commandes : permet de gérer et de faire le suivi des commandes vis-à-vis au client avec les rapports imprimés. Gérer la facturation : ce cas assure la création et la mise à jour des factures, comme il permet de faire le suivi des factures jusqu’à la dernière étape qui est le paiement. Gérer les produits : comporte la création des produits ou bien les mettre à jour. Aussi, ce cas d’utilisation permet de visualiser la variation des stocks et de signaler les besoins vis-à-vis les produits matériels non disponibles. Suivi d’activité : contient l’ensemble des tableaux de bords qui font l’analyse des ventes selon les indicateurs (comme le chiffre d’affaire par mois, le nombre des ventes par client, analyse des factures).
  • 37. 36 Diagramme de cas d’utilisation détaillé de la gestion des ventes. Ce diagramme regroupe les fonctionnalités globales que doit assurer le système vis-à-vis la gestion des achats et par la suite, on va détailler ce diagramme pour bien montrer l’utilité de chaque cas d’utilisation.
  • 38. 37 5.2 Les processus métiers 5.2.1 Le processus métier des ventes Afin de comprendre le processus des ventes de point de vue métier et d’éclaircir la relation entre les différentes phases d’une vente, le diagramme suivant illustre ses relations: Processus métier des ventes. Une fois le commercial reçoit un bon de commande de la part d’un client, il crée un devis qui doit être envoyé par la suite à ce client par email pour vérifier les informations afin de la convertir en une commande de vente validée. Pour ensuite passer par le service de facturation et de livraison. La vente se termine une fois elle est livrée et facturée. 5.2.2 Processus métier de la gestion comptable L’enchainement de l’ensemble des activités de la gestion comptable et ses liaisons avec les autres services est présenté dans le diagramme suivant :
  • 39. 38 Processus métier de la gestion comptable Une fois la facturation de vente est validée, une écriture comptable doit être associée. C’est à ce moment où commence le processus du paiement qui aboutit en fin à une facture payée. 5.3 Diagramme de séquence 5.3.1 Diagramme de séquence des ventes Les diagrammes de séquences sont la représentation graphique des interactions entre les acteurs et le système selon un ordre chronologique
  • 41. 40 Les scénarios : Dans le processus des ventes on a l’acteur responsable qui interagie avec le système central(ERP). Un client a besoin d’un produit doit interagit avec le responsable du vente afin d’établir un devis. Après l’établissement de devis le système doit consulter l’état de stock pour enregistrer cette dernière. Après l’enregistrement, le responsable valider la commande et notifié le client par un email ou SMS pour lui confirmer la commande. Génération de la facture totale a payé par le client. 5.4 Diagramme de classe Diagramme des classes détaillé
  • 42. 41 Ce diagramme représente les classes nécessaires pour assurer un bon fonctionnement du système à mettre en œuvre, les utilisateurs de l’application sont regroupés dans des groupes, chaque groupe possédant des privilèges qui permettent à ses utilisateurs inscrits d’accéder à certaines fonctionnalités. Les utilisateurs peuvent effectuer des ventes des produits aux clients, chaque vente se compose des lignes vente, chacune de ces lignes contient un article désigné, avec la quantité à vendre. 6. Technologies mises en œuvre Ce chapitre décrit les différentes technologies adoptées et utilisées pour la réalisation de ce projet, à commencer par le système d’exploitation Ubuntu, tout en passant par le PGI OpenERP, le système de gestion de bases de données PostgreSQL, et en fin les langages nécessaires pour le développement, à savoir le langage Python et XML. 6.1 Ubuntu Ubuntu est un système d’exploitation libre commandité par la société Canonical et une marque déposée par cette même société. Fondé sur la distribution Linux Debian et utilisant le bureau Unity, Ubuntu se veut « convivial, intuitif et sûr ». Il est constitué de logiciels libres, est disponible gratuitement y compris pour les entreprises, et bénéficie d'une nouvelle version (appelée « mise à niveau ») tous les six mois. Avec une utilisation globale estimée à plus de 25 millions d'utilisateurs, il est principalement conçu pour une utilisation sur des ordinateurs personnels (portables et fixes), bien que d'autres versions consacrées aux netbooks et aux serveurs existent aussi. Depuis Ubuntu 11.04, la version Netbook a fusionné avec la version Desktop. Cette dernière étant passée à l'interface Unity, il n'y avait plus de raison de maintenir deux branches distinctes.
  • 43. 42 Interface d'Ubuntu 11.10 La version d’Ubuntu utilisée pour ce projet est la 11.10, ayant pour nom de code « The Oneiric Ocelot », cette version est la quinzième version d'Ubuntu. Son développement s'est échelonné sur six mois, jusqu'à sa publication en tant que version stable le 13 octobre 2011. Elle profitera des mises à jour de sécurité pendant une durée de 18 mois, soit jusqu'en avril 2013. 6.2 PostgreSQL PostgreSQL est un système de gestion de base de données relationnelle et objet (SGBDRO). C'est un outil libre disponible selon les termes d'une licence de type BSD. Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils soient libres (comme MySQL et Firebird), ou propriétaires (comme Oracle, Sybase, DB2, Informix et Microsoft SQL Server). Comme les projets libres Apache et Linux, PostgreSQL n'est pas contrôlé par une seule entreprise, mais est fondé sur une communauté mondiale de développeurs et d'entreprises. PostgreSQL peut stocker plus de types de données que les types traditionnels entier, caractères, etc. L'utilisateur peut créer des types, des fonctions, utiliser l'héritage de type etc.
  • 44. 43 PostgreSQL est pratiquement conforme (de plus en plus conforme) aux normes ANSI SQL 89, SQL 92 (SQL 2), SQL 99 (SQL 3), SQL:2003 et SQL:2008. Il fonctionne sur diverses plates-formes matérielles et sous différents systèmes d'exploitation. Logo PostgreSQL PostgreSQL fonctionne sur Solaris, SunOS, Mac OS X, HP-UX, AIX, Linux, IRIX, Digital Unix, BSD, NetBSD, FreeBSD, OpenBSD, SCO unix, NeXTSTEP, UnixWare et toutes sortes d'Unix. Depuis la version 8.0, PostgreSQL fonctionne également nativement sur Windows. Avant la version 8, il fallait un émulateur de type cygwin pour faire fonctionner PostgreSQL sur ce système d'exploitation. PostgreSQL est largement reconnu pour son comportement stable, proche de Oracle. Mais aussi pour ses possibilités de programmation étendues, directement dans le moteur de la base de données, via PL/pgSQL. Le traitement interne des données peut aussi être couplé à d'autres modules externes compilés dans d'autres langages. 6.3 OpenERP Anciennement connu sous le nom Tiny ERP, signifiant la fourmi de l’Enterprise resource planning) est un progiciel intégré de gestion ouvert, libre de droits comprenant les ventes, la gestion de relation client (CRM), la gestion de projet, la gestion d'entrepôt, la production, la comptabilité et les ressources humaines. OpenERP a trois composants séparés : le serveur openerp-server qui stocke ses données dans une base postgresql, le client openerp- client qui s'installe sur le poste de l'utilisateur et le serveur web openerp-web qui permet une utilisation depuis un navigateur. Ces trois composants communiquent par les protocoles xml- rpc et net-rpc.
  • 45. 44 Interface Web d'OpenERP Le logiciel est basé sur une forte architecture MVC, des flux de travail flexibles, une interface-utilisateur graphique dynamique, une interface XML-RPC, et un système personnalisable de comptes-rendus avec une intégration pratique d'OpenOffice.org. Dans la classification des logiciels, OpenERP, comme tout autre PGI sur le marché est un package destiné, a priori, à tous les secteurs, à toutes les fonctions, les adaptations nécessaires se faisant par paramétrage. Il dispose de forts arguments commerciaux pour séduire les dirigeants (il propose de mettre un terme au désordre du système d’information, et aussi de régler des problèmes d’organisation sans effort politique). Cette offre séduisante par sa qualité et sa cohérence se révèle à l’usage plus risquée que l’on avait pu l’imaginer : elle ne peut être efficace que si l’on accepte les contraintes qu’elle impose. Sa mise en œuvre comporte des difficultés et des pièges. Implanter un PGI a ses avantages, parmi lesquels je cite : o Optimisation des processus de gestion o Cohérence et homogénéité des informations o Intégrité et unicité du Système d’information o Mise à disposition d’un outil multilingue et multidevises (très adapté aux multi-nationales) o Communication interne et externe facilitée par le partage du même système d’information
  • 46. 45 o Meilleure coordination des services et donc meilleur suivi des processus (meilleur suivi de commande ou meilleure maîtrise des stocks par exemple) o Normalisation de la gestion des ressources humaines (pour les entreprises gérant de nombreuses entités parfois géographiquement dispersées) o Minimisation des coûts (formation et maintenance) o Maîtrise des coûts et des délais de mise en œuvre et de déploiement o Mise à disposition, des cadres supérieurs, d’indicateurs nettement plus fiables que lorsqu’ils étaient extraits de plusieurs systèmes différents Toutefois, cela peut avoir quelques inconvénients, comme la lourdeur et la rigidité de la mise en œuvre, ou encore les difficultés d’appropriation par le personnel de l’entreprise. OpenERP comporte plusieurs modules fonctionnels, je cite les exemples suivants : o CRM ; gestion de la relation client o Comptabilité analytique et financière (Conforme aux exigences françaises) o Gestion des stocks o Gestion de production (GPAO) o Gestion de projets et des activités de services o Norme qualité : ISO 9001 version 2000 o Gestion des ventes o Gestion des achats o Marketing o Logistique o Ressources humaines o Gestion documentaire Coté architecture, OpenERP est basé sur une architecture 3 tiers: 1. Un serveur de base de données PostgreSQL (qui peut contenir plusieurs bases de données) 2. Un serveur d'applications (contenant les objets de gestion, le moteur de workflow, le générateur d'édition, etc.) 3. Un serveur de présentation (appelé OpenERP Web) qui permet à l'utilisateur de se connecter à OpenERP avec n'importe quel navigateur internet (avec le lecteur Flash installé pour l'affichage des graphiques). Ce serveur n'est pas nécessaire si l'utilisateur utilise le client lourd mais qui nécessitera une installation physique sur le poste de l'utilisateur (cette application se nomme Client GTK).
  • 47. 46 Architecture d'OpenERP Ses fonctions de veille économique intégrées permettent à des utilisateurs multiples de traiter tous les aspects du logiciel. Ainsi, les rapports et les flux de travail peuvent être personnalisés. La partie serveur est écrite en langage Python. Les différentes briques sont organisées en «modules». Un module est un dossier avec une structure pré-définie contenant du code Python et des fichiers XML. Un module définit la structure de données, formulaires, rapports, menus, procédures, flux de travail, etc. Le client est léger car il ne contient pas de logique d'entreprise (l'ensemble est embarqué dans le serveur d'application). Ainsi, l'ajout de nouveaux objets, comme les menus ou formulaires, le rend accessible à tout type de client graphique (GTK+, Web, Qt, ou Texte). Le client GTK+ est par défaut et est basé sur la plateforme PyGTK (Python). Le client-web est écrit en langage Python. Il utilisait la plate-forme turboGears jusqu'à la version 5.0.1. Bien que concernant le contenu, les clients GTK + et -web soient équivalents, il existe certaines différences dans la fonctionnalité de l'interface. Par exemple le client-web peut avoir un lien de personnalisation sur chaque formulaire, mais le client GTK+ n'a pas de fonction comparable. Pour ce projet, la version d’OpenERP qui m’a été conseillée pour l’utiliser est la 6.1, parue en février 2012, cette version comporte plusieurs nouveautés :
  • 48. 47 - Un meilleur partage des informations : Des fonctionnalités de partage des informations à des tiers ont été ajoutées. Il est par exemple possible de permettre l'accès aux données d'un projet en cours à un sous-traitant ou de permettre à un client de consulter les factures qui lui correspondent et de les imprimer. La refonte de l'interface Web riche en javascript permet en outre d'intégrer n'importe quelle partie de l'interface d'OpenERP à site Web tiers. - Fonctions d'échanges EDI : Des fonctions d'Échange de données informatisé font leur apparition, permettant à un partenaire d'importer des données (par exemple une facture) le concernant dans son propre système OpenERP ou progiciel tiers (au format JSON), et même d'effectuer le paiement en ligne. - Une interface mobile : Une nouvelle interface conçue pour l'utilisation sur les terminaux mobiles de type smartphone fait son apparition. Basée sur le framework JQuery Mobile, elle ne permet pour l'instant que la consultation en lecture seule des informations. - Une interface destinée aux points de ventes : Une nouvelle interface dédiée aux points de ventes à écran tactiles, tablettes et autre dispositifs de caisse interactifs est inaugurée dans cette version d'OpenERP. Cette fonctionnalité très demandée permet d'utliser un lecteur de codes à barres, de sélectionner des produits par catégorie/sous catégorie, la recherche par nom de produits et peut fonctionner hors-ligne et se synchroniser automatiquement lorsque la connexion avec le serveur est rétablie. Et ce ne sont pas que les nouveautés qu’a apporté cette version, mais aussi des améliorations : o Une configuration plus simple : De nouveaux boutons de raccourcis font leur apparition, permettant de créer plus intuitivement de nouveaux documents et de nouveaux enregistrements directement à partir de leur saisie dans les champs de données. De même, une installation fraîche d'OpenERP inclut dorénavant une configuration minimale des modules, basée sur les bonnes pratiques et les utilisations les plus courantes observées chez les utilisateurs. o Un effort sur l'utilisabilité : L'installateur et l'assistant de configuration ont été repensés afin de faciliter la compréhension par les nouveaux utilisateurs, en demandant moins de détails sur la société à gérer et en se focalisant sur les informations absolument nécessaires. La page d'installation des modules propose par défaut une installation sous forme de « thèmes ». Par exemple, un clic sur le thème « Ventes » installera tous les modules nécessaires à la gestion des ventes, et vous dirigera ensuite automatiquement vers ce module configuré et prêt à l'emploi. o Importation des données facilitée : L'importation des données dans OpenERP à partir de sources tierces a été améliorée. En effet, un assistant fait son apparition permettant de facilement faire correspondre un fichier de données au format csv au schéma de données OpenERP. À noter aussi l’existence de fonctions d'importation automatisée des données depuis SugarCRM et Google Calendar.
  • 49. 48 o Sous-système de courriels unifié : La configuration des paramètres de connexions pour l'envoi et la réception de courriels est maintenant unifiée, ce qui met fin à la duplication des configurations pour les modules tirant partie de ces fonctions de courriels. o Refonte du module de paie : Le module de gestion de paie a été repensé, afin d'être plus flexible et s'adapter ainsi plus aisément aux spécificités de chaque pays et de chaque entreprise. o Ré-écriture de l'interface Web : L'interface Web d'OpenERP a été entièrement ré-écrite et fait dorénavant la part belle à la technologie Javascript, sans non plus bouleverser son apparence et l'expérience utilisateur. Parmi les conséquences, on peut noter qu'elle offre plus de fonctionnalités avec moins de code, et est plus rapide que l'ancienne implémentation de la 6.0. Au niveau des améliorations se trouve aussi la possibilité de personnaliser les tableaux de bord directement depuis l'interface avec de simples glisser-déposer, ainsi que l'arrivée d'une nouvelle forme de présentation des données, la vue « kanban ». o Compatibilité WSGI : De gros efforts ont été fait afin de rendre OpenERP compatible avec Web Server Gateway Interface qui permet de recourir à des serveurs d'application python tels que Gunicorn et uWSGI facilitant une implémentation extrêmement robuste d'OpenERP sur les serveurs, un bien meilleur contrôle de l'assignation des ressources matérielles et une simplification de la mise en place de mécanismes de réplication et de répartition de charge (les serveurs d'applications proposant souvent de telles fonctionnalités). 6.4 Python Python est un langage de programmation multi-paradigme. Il favorise la programmation impérative structurée, et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire par ramasse-miettes et d'un système de gestion d'exceptions ; il est ainsi similaire à Perl, Ruby, Scheme, Smalltalk et Tcl. Le langage Python est placé sous une licence libre proche de la licence BSD et fonctionne sur la plupart des plates-formes informatiques, des supercalculateurs aux ordinateurs centraux, de Windows à Unix en passant par Linux et Mac OS, avec Java ou encore .NET. Il est conçu pour optimiser la productivité des programmeurs en offrant des outils de haut niveau et une syntaxe simple à utiliser. Il est également apprécié par les pédagogues qui y trouvent un langage où la syntaxe, clairement séparée des mécanismes de bas niveau, permet une initiation plus aisée aux concepts de base de la programmation.
  • 50. 49 Python est un langage : o conçu pour produire du code de qualité, portable et facile à intégrer : grâce à sa syntaxe claire, cohérente et concise, Python permet aux développeurs de produire du code de qualité, lisible et maintenable. Écrire du code Python est un exercice agréable, même en respectant les conventions de codage. Fourni dès le départ avec des modules de tests, Python est un langage agile. Le terme agile est originellement issu de la méthodologie de programmation agile (Beck et Al.), très proche de la programmation itérative. Cette méthodologie, qui réduit les risques liés à la conception de logiciels, introduit entre autres des principes de tests continus du code. o De haut niveau, orienté objet et totalement libre : même si elle n’est pas imposée, Python permet la programmation orientée objet. Tous les mécanismes objet essentiels sont implémentés et toutes les données manipulées sont des instances de classes, comme pour les langages SmallTalk ou Ruby. Enfin, le code peut être structuré en modules (fichiers) qui sont ensuite importables dans l’interpréteur. Ce découpage, permet d’organiser le code et son utilisation par des espaces de noms, et aussi de faciliter l’extension du langage par des bibliothèques tierces compilées dans d’autres langages. o Hautement productif : La conception d’applications en Python est très rapide car certains aspects de programmation sont gérés automatiquement, comme la gestion des ressources mémoire et le typage des données. Grâce à des types de base très puissants et des primitives de haut niveau, un programme Python est simple à concevoir et concis. Un programme Python est en général 3 à 5 fois plus court qu’un programme C++ équivalent. Ces qualités font de Python un langage idéal dans beaucoup de domaines. Enfin, la bibliothèque standard de Python est très complète, et permet de répondre aux besoins communs de programmation. Grâce au modèle Open Source, la communauté des développeurs Python est en outre très productive et de nombreuses extensions gravitent autour du langage. o Hautement productif : La conception d’applications en Python est très rapide car certains aspects de programmation sont gérés automatiquement, comme la gestion des ressources mémoire et le typage des données. Grâce à des types de base très puissants et des primitives de haut niveau, un programme Python est simple à concevoir et concis. Un programme Python est en général 3 à 5 fois plus court qu’un programme C++ équivalent. Ces qualités font de Python un langage idéal dans beaucoup de domaines. Enfin, la bibliothèque standard de Python est très complète, et permet de répondre aux besoins communs de programmation. Grâce au modèle Open Source, la communauté des développeurs Python est en outre très productive et de nombreuses extensions gravitent autour du langage.
  • 51. 50 6.5 XML XML (eXtensible Markup Language) est en quelque sorte un langage HTML amélioré permettant de définir de nouvelles balises. Il s'agit effectivement d'un langage permettant de mettre en forme des documents grâce à des balises (markup). Contrairement à HTML, qui est à considérer comme un langage défini et figé (avec un nombre de balises limité), XML peut être considéré comme un métalangage permettant de définir d'autres langages, c'est- à-dire définir de nouvelles balises permettant de décrire la présentation d'un texte (Qui n'a jamais désiré une balise qui n'existait pas ?). La force de XML réside dans sa capacité à pouvoir décrire n'importe quel domaine de données grâce à son extensibilité. Il va permettre de structurer, poser le vocabulaire et la syntaxe des données qu'il va contenir. En réalité les balises XML décrivent le contenu plutôt que la présentation (contrairement À HTML). Ainsi,XML permet de séparer le contenu de la présentation, ce qui permet par exemple d'afficher un même document sur des applications ou des périphériques différents sans pour autant nécessiter de créer autant de versions du document que l'on nécessite de représentations ! XML a été mis au point par le XML Working Group sous l'égide du World Wide Web Consortium (W3C) dès 1996. Depuis le 10 février 1998, les spécifications XML 1.0 ont été reconnues comme recommandations par le W3C, ce qui en fait un langage reconnu. (Tous les documents liés à la norme XML sont consultables et téléchargeables sur le site web du W3C, http://www.w3.org/XML/) XML est un sous ensemble de SGML (Standard Generalized Markup Language), défini par le standard ISO8879 en 1986, utilisé dans le milieu de la Gestion Electronique Documentaire (GED). XML reprend la majeure partie des fonctionnalités de SGML, il s'agit donc d'une simplification de SGML afin de le rendre utilisable sur le web ! XML fait partie du code des modules composants OpenERP, les vues par lesquelles sont représentés les différents objets sont écrites en XML, ainsi nous y trouvons la description détaillée de l’affichage des arbres, formulaires, menus et autres actions .
  • 52. 51 Partie IV: La maitrise du module -installation du module -Gestion des ventes Dans ce chapitre nous allons apprendre comment installer le module de la vente, et réaliser des ventes selon les besoins exigés
  • 53. 52 7 Installation des Modules : Nous installons maintenant un module nommé Sales Management, qui va nous permettre de gérer les ventes de l’entreprise. Pour ce faire, ouvrez la liste des modules à installer via le menu Administration »Gestion des modules » Modules. Recherchez le module en entrant son nom (Sales Management) dans l’écran de recherche, puis cliquez dessus pour l’ouvrir. Le formulaire de description du module vous donne alors les informations utiles telles que son numéro de version, son statut et un récapitulatif des fonctionnalités apportées par ce module. Cliquez sur le bouton Installer et le statut du module passe à l’état À installer.
  • 54. 53 7.1 Configurer les données de la comptabilité : On va Choisir un ensemble de configuration pour configurer automatiquement nos taxes et notre plan comptable. On va configurée Logiciel de comptabilité (Accounting Package) pour Maroc –comptabilité et la société à notre société.
  • 55. 54 7.2 Règlement de l’option de comptabilité : Après le Click sur Continuer, il va vous apparaissez une fenêtre de règlement de l’option de notre comptabilité, Dans notre cas on va laisser le devise comme il est, et le TVA de l’achat et du vente on va le configurer sur 20%.
  • 56. 55 7.3 Installation Le module du Stock : Maintenant on doit installer le module du Stock (Warehouse Management) Sachant qu’on ne peut pas effectuer une vente sans avoir un stock, pour ce faire, ouvrez la liste des modules à installer via le menu Administration »Gestion des modules » Modules. Recherchez le module en entrant son nom (Warehouse Management) dans l’écran de recherche.
  • 57. 56 7.4 Installation le module d’alerte : On va taper dans la barre de recherche : « Warning Messages and Alerts », ce module nous permet d’afficher des alertes quand on aura besoin d’avertir l’agent commercial pour vendre un article à un client.
  • 58. 57 7.5 Installation le limiteur du crédit : On est besoin maintenant d’un module qui nous aidera à limiter le crédit de chaque client et qu’il ne doit pas le dépasser, ce module n’est pas donner, c’est un module qu’on a paramétré à l’aide du langage python et voici comment on peut l’installer : Ce module s’appelle « customer_credit_limit », On va le placer dans ce chemin « C:Program FilesOpenERP 7.0-20140114-001020Serverserveropenerpaddons » Après on clique sur Mettre à jour les listes des modules et on le mettre à jour, puis on clique sur appliquer les mises à jour aussi on clique sur mettre à jour, et finalement on cherche les modules non installer et on installe notre module. Installation le module de la remise globale : Finalement Nous somme besoin d’un module Qui nous permettons d’affecter une remise globale sur le bon de commande, Ce module qu’on doit installer s’appelle « Global Discount » On tape son nom dans la barre du recherche.
  • 59. 58 7.6 Gestion des ventes : Avant de commencer et afin d’optimiser notre travail et de le rendre plus professionnel, il est favorable de mettre d’autre utilisateurs On est besoin d’un Magasinier, agent commercial et un responsable commerciale chacun un rôle attribuer. Le magasinier :assume sa responsabilité sur les entrepôts c’est lui qui gère le stock, ajoute des articles, Voir la disponibilité d’un produit, livre les bons de commande. L’agent commercial :c’est lui qui ajuste les devis, effectuer une bon de commande, fait des remises, Responsable commercial :fait les rôles de toutes les utilisateurs, c’est lui qui Contrôle tous, et plus d’autre privilèges. -On verra maintenant Comment crée ces utilisateurs, et la configuration de ses droits d’accès. Pour ce faire, Ouvre Configuration » utilisateurs et On crée : -Le magasinier son droit d’accès Entrepôt : responsable.
  • 60. 59 -Agent Commercialson droit d’accès See All leads. -Responsable Commercialson droit d’accès Responsables sur les ventes, Entrepôt, achat et comptable en comptabilité & finance, employée en ressources humaines.
  • 61. 60 N .B : il fallait mettre à chaque utilisateur un mot de passe pour qu’il puisse ouvrir aisément sa session lors de sa prochaine connexion. Création des articles : On commence notre projet par la création des articles : Ce travail se fait par le magasinier ou par le responsable commerciale, il Clique sur Entrepôt puis sur articles et il crée leur produit, et voici les étapes de la configuration :
  • 62. 61 Compte de revenus et de dépenses on le configure sur 711100 Ventes de marchandises au Maroc Création des Clients : Ce travail se fait par l’agent commercial ou par le responsable commerciale, il clique sur Vente puis sur Client, il crée un client, voici un exemple d’un client :
  • 63. 62 Configuration de la vente : On configure le module vente selon nos besoin, On clique sur Configuration puis Sales et on coche les éléments exigés, dans notre cas on doit cocher Générez les factures après et sur la base des bons de livraison et Utilisez les listes de prix pour adapter votre prix aux clients.
  • 64. 63 Processus de ventes : Ce travail est attribuer au agent commercial, il clique sur Ventes puis sur devis et il crée un devis, comme je viens de vous montrer : Après il clique sur Confirmer la vente, cela transforme le devis à un bons de commande.
  • 65. 64 Lorsque le magasinier va connecter il va remarquer qu’un bons de livraison est ajouté, il va vérifier la disponibilité du produit dans le stock après il va le livré. -------------------------------------------------------------------------------------------------- --------
  • 67. 66 8 Gestion des ventes Selon le Cahier des charges : Système d’alerte : - Alerte de la rupture du stock : cette alerte il se génère automatiquement lorsqu’on définit un produit comme Article Stockable, et non pas une Article consommable, et Voilà le Message qu’il va nous apparait Lorsqu’on a dépassé le nombre réel du produit en Stock : - Alerte COTA :Cette alerte se génère par le magasinier, ce n’est qu’un avertissement en provenance de l’article, informe l’agent commercial lorsque la quantité d’un produit a diminué d’une valeur préalablement définit, il doit vendre pour chaque client une quantité restreinte, et voici comment on peut le faire : Le magasinier ouvre sa session, et clique sur entrepôt » article, sélectionne l’article sollicité et écrit le message qui va apparait au agent commercial quand il veut faire une bon de commande sur le produit choisis.
  • 68. 67 Lorsque l’agent commercial ouvre sa session, et il veut faire une bons de livraison sur cette article l’avertissement apparaitra.
  • 69. 68 Alerte sur le crédit :Cette Alerte ce fait grâce au module « customer_credit_lemit », et se fonctionne quand un client dépasse le crédit saisi par l’agent commercial ou par le responsable commercial, et qui empêche le client de demander un produit tant que son crédit a atteint le crédit autorisé, et voilà comment on peut le faire : On doit aller à la configuration du client, puis comptabilité et on modifie le champ limite de crédit. - - Le client est déjà fait 2 Bons de commande, Lors de la confirmation de vente du 3éme bons de commande : -Voici le message d’alerte qu’il apparaît Quand le client a dépassé son crédit autorisé :
  • 70. 69 Facturation groupée : On veut faire une facturation groupé Sur les lignes de commande ou de livraison, ça veut dire un rassemblement de toutes les bons de commandes à facturé ou des livraisons à facturer en une seule facture groupée. Facturation sur lignes de commande : Après la confirmation de la vente il faudra maintenant réaliser les factures, Voilà les étapes à suivre pour le faire. On va faire un filtre personnalisée des bons de commande à facturer, regroupé par client, et on va le nommer Facture regroupée afin d’utiliser plusieurs fois.
  • 71. 70 On sélectionne les factures à groupée, et on clique sur Autre options, Générer les factures Après On doit cocher la case de grouper les factures, et on précis la date de facturation et on clique sur Créer les factures. Facturation sur lignes de livraison :Après la livraison de la commande, on peut créer aussi des factures à partir de ces lignes de livraison, voici les étapes à suivre pour le faire.
  • 72. 71 On doit commencer par filtrer les livraisons à facturer Après On clique sur Autre options, Créer les factures brouillon On doit cocher la case groupé par partenaire, et on valide une date de facturation
  • 73. 72 Les Remises : Remise sur les bons de commande : La remise permet de déprécier la valeur du montant, On peut le faire directement sur le produit ou sur le total par la remise global, et voici comment on peut le faire : On saisit manuellement le pourcentage de remise soit sur article, soit sur le total
  • 74. 73 Voici ce qu’il affichera après l’affectation de la remise
  • 75. 74 Remise par palier :Il sert à changer automatique le prix d’un article, quand un client veut l’acheter avec grande quantité qu’on a déjà précisée sa valeur permettant d’effectuer cette remise. Voici les étapes à suivre pour réaliser ce changement : Ouvre la session responsable commercial car c’est lui qui a le droit de créer les liste des prix, après clique sur vente »Listes de prix » Listes de prix »Créer Après, on va nommer cette liste, On coche la case actif et on clique sur ajouter un élément
  • 76. 75 Après On le donne un nom, une durée de remise et on ajoute une séquence Cela nous apparaissions cette fenêtre, On sélectionne l’article et la valeur du quantité permettant d’effectuer la remise puis on saisit la valeur de remise, par exemple ici on a fait une démonstration d’une remise de 50%, comme on remarque la remise se fait par une opération mathématique qui soustraire un pourcentage du prix initiale N.B : Il faut saisir un nombre négatif pour faire la remise Finalement, on enregistre tout.
  • 77. 76 Maintenant la méthode d’appeler cette remise lors de la création d’un bon de livraison. Voici le prix normal du produit Et Quand on changera son liste de prix à notre nouvelle liste de prix On remarque que son prix unitaire a changé, Alors y a une remise de 50%
  • 78. 77 Conclusion générale etperspectives Ce Projet de fin d'étude a été une occasion pour nous pour côtoyer le monde des ERP , mais avec plus de responsabilités. Dans notre projet de fin d’études, le travail a été réalisé au profit d'une société Grossiste répartiteur des Médicaments. Dans ce cadre, nous avons mis en place un système de gestion intégrée au sein de la société. Pour ce faire, nous avons commencé par la description des besoins des futurs utilisateurs du système. Par la suite, nous nous sommes basés sur une étude bibliographique sur les différentes solutions existantes à savoir les progiciels de gestion intégrée dans le marché afin de choisir une solution qui respecte les exigences de la société comme la maîtrise des coûts d’implémentation. OpenERP est la solution élue après une étude comparative entre les différents progiciels de gestion intégrée. La phase suivante a consisté de paramétrer les modules d’OpenERP avec les modules fonctionnels de la société. . Coté personnel, travailler dans le monde de l’open source, et plus précisément sur un PGI tel que OpenERP. Qui m’a permet d'acquérir une large partie des technologies notamment le langage python et l’utilisation du Framework « OpenObject », et de rejoindre une communauté mondiale de plus de 1500 individus impliqués eux aussi dans la recherche et le développement de nouveaux modules, afin de faciliter l’intégration d’une telle solution dans tous les domaines professionnels et sociaux.