Arrow Table de matières
2306962

II.2. Modélisation

La  modélisation est une technique d'ingénierie permettant de représenter un système; elle s'appuie sur l'établissement des modèles. Un modèle est une abstraction simpliste de la réalité, centrée sur la représentation conceptuelle et physique d'un système [KAS2012].

II.2.1. Dictionnaire des données

Le dictionnaire des données est un document qui permet de recenser, de classer et de trier toutes les informations (les données) collectées lors des entretiens ou de l’étude des documents. Le dictionnaire peut être plus ou moins élaboré selon le niveau de granularité souhaité [KAS2012].

Notre modèle répertorie les données comme suit :

26

Tableau II.7 : Dictionnaire des données

Nom de la donnée

Format

Longu

eur

Type

Règle  de calcul

Règle de gestion

Document

E

C

Adresse Fournisseur

Alphabétique 

50

x

//

Code Catégorie

Alphanumérique

10

x

-

Code Fournisseur

Alphanumérique

10

x

Fiche de stock

Code Matériel

Alphanumérique 

10

x

Réquisition 

Code Opération

Alphanumérique

10

x

-

Code Service 

Alphanumérique

10

x

-

Contact Fournisseur

Alphanumérique

30

x

//

Date Commande 

Date 

x

Date Emission

Date 

x

Facture 

Date Opération

Date 

x

-

Date paiement

Date 

x

-

Date Réquisition 

Date 

Dénomination 

Alphabétique 

50

x

//

Désignation Catég

Numérique 

50

x

-

Désignation Mat 

Alphabétique 

50

x

Réquisition 

Désignation Service

Alphabétique

90

x

Réquisition 

Ecart 

Numérique 

x

Index actuel-index précédent

Bon de carburant

Index Actuel

Numérique 

x

Bon de carburant

Index Précédent 

Numérique 

x

Bon de carburant

Marque du véhicule

Alphabétique 

30

x

Bon de carburant

27

Montant Facture

Monétaire 

x

Facture

Montant Payé

Monétaire 

x

-

Moyenne de consommation

Numérique 

x

Qté  accordée/Ecart

Bon de carburant

Num Commande

Alphanumérique

10

x

Num Facture 

Alphanumérique

10

x

Facture

Num Réquisition

Alphanumérique 

10

x

Réquisition 

Payée 

Oui/Non

x

-

Plaque 

alphanumérique

30

x

Bon de carburant

Prix Total

Monétaire

x

Prix Unitaire*Qté Cmdée

Prix Unitaire

Monétaire

x

Qté  accordée précédemment

Numérique 

x

Bon de carburant

Quantité accordée

Numérique 

x

Réquisition

Quantité Commandée

Numérique

x

Quantité Demandée

Numérique

x

Réquisition

Quantité Entrée

Numérique 

x

-

Quantité Sortie

Numérique 

x

-

Reste à payer

Monétaire 

x

Montant facture-montant payé

Stock

Numérique 

x

Réquisition

Stock Final 

Numérique 

x

(SI+QtéEntrée)-Qté Sortie

Stock Initial

Numérique 

x

-

Unité 

Alphabétique 

5

x

Réquisition

II.2.3.  Le modèle conceptuel des données (MCD)

Le modèle conceptuel des données a pour but de décrire d’une manière formelle les différentes données qui seront utilisées par le système d’information. Il est une représentation graphique des structures des données dans laquelle ne figure  aucune redondance. C’est une représentation simplifiée de la réalité bâtie à l’aide d’entités et d’associations [KAS2012].

Partant des tables dégagées du dictionnaire de données aux pages  et 28, notre Modèle conceptuel de données se présente comme indiqué à la figure suivante.

Figure II.3.  Modèle Conceptuel de données (MCD) 

Règles de gestion :

R1  : une et une seule catégorie contient un ou plusieurs matériels

R2       : une ou plusieurs demandes d’offre ont un ou plusieurs matériels

R3       : une demande d’offre est envoyée à un ou plusieurs fournisseurs

R4       : un fournisseur reçoit une ou plusieurs commandes

R5       : une ou plusieurs commandes  correspondent à  un ou plusieurs matériels

R6       : un fournisseur émet une ou plusieurs factures

R7       : une ou plusieurs factures comportent un ou plusieurs matériels

R8       : une ou plusieurs opérations  concernent un ou plusieurs matériels

R9       : un service produit une ou plusieurs réquisitions

R10 : une ou plusieurs réquisitions comprennent un ou plusieurs matériels 

II.2.4. Le Modèle logique de données (MLD)

Le  modèle logique des données permet de voir de façon claire  l’organisation des données. Il consiste en deux étapes : supprimer les relations complexes pour les transformer en tables à part entière d’une part et  d’autre part pour trouver les clés étrangères. Il décrit la structure des données utilisées sans faire référence à un langage de programmation. 

Il a pour objectif  de traduire le schéma conceptuel dans le modèle du système de gestion de base des données  choisi pour implémenter  la base de données. Le résultat appelé aussi schéma logique, dépend donc du modèle choisi. Le processus est de garantir que le schéma logique est conforme au modèle du Système de Gestion de Base des Données [HAI2009].

Du MCD précédent et des règles des relations entre les tables, nous avons déduit le schéma logique  suivant :

Figure II.4.  Modèle logique  de données (MLD)

De ce qui précède, nous obtenons le modèle logique  relationnel suivant :

MATERIEL (CodeMat, DesignMat, Unite, #CodeCateg,)

CATEGORIE (CodeCateg, DesignCateg)

DMDEOFFRE (NumDmdeOffre, DateDmdeOffre, #CodeFss) 

DETAIL-DMDEOFFRE (QteDmdeOffre, #NumDmdeOffre, #CodeMat)

COMMANDE (NumCmde, DateCmde, #CodeFss)

DETAIL-COMMADE (QteCmdee, PrixUnitaire, prixTotal, #CodeMat, #NumCmde)

FACTURE (NumFact, DateEmission, MontantTotal, Payee, DatePaiement,MontantPaye,

Avance, ResteAPayer, #CodeFss)

DETAIL-FACTURE (Quantite, PrixUnitaire, PrixTotal, #NumFacture, #CodeMat)

FOURNISSEUR (CodeFss, Denomination, Adresse, Contact)

REQUITION (NumReq, DateReq, DateService, #CodeService)

DETAIL-RAQUISITION (QteDmdee, QteAccordee, QteAccordPrecedem, MarqueVehicule,

Plaque, IndexActuel, IndexPreced, Ecart, MoyenneConsommat°, #CodeMat,

#NumReq)

OPERATION (CodeOp, DateOp)

DETAI-OPERATION (StockInitial, QteEntree, QteSortie, StockFinal, #CodeOp, #CodeMat) SERVICE (CodeService, DesignService).

II.2.5. Le modèle physique de données (MPD)

Le  modèle physique de données est le dernier modèle à réaliser avant de programmer la définition de la base de données. A ce stade, il s’agit de prendre  en compte les aspects matériels et le système de gestion de base de données, afin de préparer  la description en  machine.  Le MPD est l’enrichissement du MLD. Celui-ci est complété de constructions techniques qui conféreront à la future base de données des bonnes performances [HAI2009].

Les aspects matériels choisis pour une bonne utilisation de ce logiciel sont :

  • un ordinateur ayant Microsoft Windows XP, Vista ou Seven comme système d’exploitation avec MS Office Access 2007 ou ultérieur préalablement installé, 
  • une imprimante pour l’impression des états de sortie sur support papier.

Comme chaque base de données suppose un système de gestion de base de données, de tous les SGBD étudiés,  nous avons opté pour MS Access 2007 avec le langage Visual Basic for Application (VBA) pour nous permettre d’organiser les données sur les périphériques en fournissant la procédure de sélection et de recherche des données. 

 Les  critères d’une bonne base de données tels que décrits par  Jean-Luc HAINAUT sont les  raisons qui nous ont le plus  poussé  à utiliser  MS Access :

la bonne représentation des données,  la non redondance de l’information,  l’indépendance du programme par  rapport aux données, la sécurité et la confidentialité des données ainsi que la performance des applications permettant d’offrir à l’utilisateur  une interaction avec la base de données sous forme d’un dialogue pour la recherche, la sélection et la modification de données [HAI2009].

En plus la disponibilité du langage VBA sous Access et de son compilateur, la compatibilité avec les requêtes  SQL (Structured Query Language), la maitrise que nous avons de ce langage, une documentation fort disponible ainsi que sa programmation événementielle sont pour nous des atouts majeurs pour aborder notre sujet.

L’environnement MS Access nous a permis d’implanter des tables, des requêtes, des formulaires, des états, des macros et des modules Visual Basic for Application.

II.2.5.1.  Les tables

Les tables sont des objets  qui  nous servent  à  l’enregistrement  des données dans la base. Elles sont constituées  des données organisées   sous formes des tableaux où les colonnes correspondent à des champs et les lignes à  des enregistrements (appelés aussi «  entrées »). Elles contiennent toutes les informations de la base et  sont constituées par la liste de champs, leurs types de données ainsi que leur taille [SIN2012]. 

Après analyse du système d’information, nous avons reparti  les données présentées dans le dictionnaire de données précédent dans  quatorze (14) tables dont  neuf (9) tables principales et cinq (5) tables intermédiaires issues de l’application des règles de gestion et de la relation n à n entre tables.

Ci-dessous nous présentons  la table « Materiel » en mode création et mode feuille de données. Cette table contiendra les informations statiques c'est-à-dire qui ne seront pas appelées à varies à chaque opération sur le matériels et fournitures  tels que le code du matériel, sa désignation et  l’unité d’expression.

Figure II.5 : Table « Materiel » en mode création

Figure II.6 : Table « Materiel » en  mode feuille de données

II.2.5.2.  Les requêtes

Elles sont utilisées pour obtenir les données contenues dans une ou plusieurs tables à partir  d’une question ; bref, elles servent à interroger la base de données en affichant uniquement certaines données contenue dans les tables selon certains critères. Elles peuvent calculer les données, créer des sources de données pour les formulaires, états ou d’autres requêtes ainsi que modifier des tables existantes ou en créer des nouvelles.

Il existe plusieurs types de requête mais celle dont nous nous sommes servi le plus est la  « requête sélection » qui permet de sélectionner des enregistrements, de faire des calculs et des regroupements et permettent en plus de travailler sur plusieurs tables simultanément.

Ci dessous nous présentons une requête en mode création  et en mode feuille de données regroupant les détails d’une facture provenant des tables Fournisseur, Facture, Détail-Facture et Matériel comme indiqué à la figure suivante :

Figure II. 7 : Requête « DetailFacture » en mode création

La même requête en mode feuille des données se présente comme suit :

Figure II.8: Requête « DetailFacture » en mode feuille des données

II.2.5.3.  Les formulaires

Sont  des objets utilisés pour faciliter la saisie, la modification et l’affichage des données d’une table de façon bien plus agréable que le mode « feuille de données » (lignes et colonnes).  Ils permettent en plus de manipuler au même endroit des informations  provenant de plusieurs tables simultanément [HAI2009].

Nous avons utilisé des formulaires indépendants (c'est-à-dire non lié à une table ou requête)  pour l’ajout/création, modification et suppression des données et des formulaires  dépendants (c'est-à-dire crées à partir d’une table ou d’une requête pour la manipulation au même endroit des données de plusieurs tables ou requêtes). 

Ci-dessous, nous présentons un formulaire de création/ajout, modification et suppression des matériels. 

Figure II.9: Formulaire de création, modification et suppression des matériels

En cliquant une fois sur le bouton Créer (ci-haut encerclé en rouge), le clic exécute le code permettant d’enregistrer  dans la table « Materiel » les éléments saisis au formulaire, par exécution des instructions  suivantes :

Private Sub NouveauMateriel_Click()

Dim db As Database, rs As Recordset  

       Set db = CurrentDb()

       Set rs = db.OpenRecordset("Materiel", dbOpenDynaset)        rs.FindFirst "CodeMat = '" & Me!FrmCodeMat & "'"

If IsNull(Me!FrmCodeMat) = True Or IsNull(Me!FrmDesignMat) = True Or

IsNull(Me!FrmUnite) = True Or IsNull(Me!FrmCodeCateg) = True Then

       DoCmd.OpenForm "Paspermis"

Else

           If rs.NoMatch Then               rs.AddNew               rs!CodeMat = Me!FrmCodeMat               rs!DesignMat = Me!FrmDesignMat               rs!Unite = Me!FrmUnite               rs!CodeCateg = Me!FrmCodeCateg             rs.Update

              DoCmd.OpenForm ("Enregistrement")          

              Me!FrmCodeMat = ""

              Me!FrmDesignMat = ""

              Me!FrmUnite = ""

              Me!FrmCodeCateg = ""

           Else

              Me!FrmDesignMat = rs!DesignMat

              Me!FrmUnite = rs!Unite

              Me!FrmCodeCateg = rs!CodeCateg

              DoCmd.OpenForm ("Existe")            End If               rs.Close

End If

End Sub

Le formulaire suivant sert à enregistrer, modifier et supprimer un fournisseur.

Figure II.10 : Formulaire de création, modification et suppression des fournisseurs

Un clic sur le bouton « Modifier » (encerclé en rouge) déclenche l’exécution du code de modification telle que décrit par le code suivant :

Private Sub ModifierFourn_Click()

Dim db As Database, rs As Recordset   

       Set db = CurrentDb()

       Set rs = db.OpenRecordset("Fournisseur", dbOpenDynaset)        rs.FindFirst "CodeFss = '" & Me!FrmCodeFss & "'"

    If IsNull(Me!FrmCodeFss)= True Or IsNull(Me!FrmDenominationFss)= True Or IsNull(Me!FrmAdresseFss)= True Or IsNull(Me!FrmContactFss)=

True Then

        DoCmd.OpenForm "Paspermis"

    Else

           If Not rs.NoMatch Then             rs.Edit               rs!Denomination = Me!FrmDenominationFss               rs!Adresse = Me!FrmAdresseFss               rs!Contact = Me!FrmContactFss             rs.Update

            DoCmd.OpenForm ("Modification")

              Me!FrmCodeFss = ""

              Me!FrmDenominationFss = ""

              Me!FrmAdresseFss = ""

              Me!FrmContactFss = ""

           Else

           DoCmd.OpenForm ("Existepas")            End If        rs.Close

       End If

End Sub

 Le formulaire suivant permet la création, la modification et la suppression des réquisitions existantes dans la table correspondante.

Figure II.11: Formulaire de création, modification et suppression des réquisitions

Pour  supprimer une réquisition, il faut cliquer sur la liste déroulante du « N° Réquisition », choisir l’élément  puis cliquer sur le bouton « Supprimer » encerclé en rouge. Dès lors le code supprime l’élément en exécutant le code suivant :

Private Sub Supprimer_Click()

Set db = CurrentDb()

Set rs = db.OpenRecordset("Requisition", dbOpenDynaset) rs.FindFirst "NumReq = '" & Me!FrmNumReq & "'"    

    If rs.NoMatch Then

        DoCmd.OpenForm ("Existepas")     Else     reponse = MsgBox("Etes-vous sûr de vouloir supprimer cet élement

?", vbQuestion + vbYesNoCancel, "suppression d'enregistrement")         If reponse = vbYes Then         rs.Delete

        DoCmd.OpenForm ("Suppression")                       

        Me!FrmNumReq = ""

        Me!FrmDateReq = ""

        Me!FrmDateLivraison = ""

        Me!FrmCodeService = ""

        End If     End If         rs.Close

End Sub

II.2.5.4. Les états

Les états sont des objets permettant l’affichage et l’impression des données contenues dans les tables sur support papier suivant une présentation bien définie en y intégrant éventuellement des calculs.

Ce travail est constitué de dix (10)  états de sotie qui résument toutes les opérations relatives aux approvisionnements  et à l’usage  de matériels et fournitures à la BCC/Bukavu. Ci-dessous nous  présentons l’état de sortie de  la réquisition des matériels et fournitures utilisée par tous les services lors de la demande des  matériels au bureau approvisionnement.

Figure II.12 : Etat de sortie, réquisition des équipements, matériels et fournitures

II.3. Présentation et utilisation du logiciel

Le présent logiciel dénommé « BCC-APPROMAF » est conçu pour la gestion des approvisionnements en matériels et fournitures. Il est utilisable sur environnement  MS Windows avec MS Office préalablement installé. Au lancement du programme, l’écran de présentation s’affiche comme illustré à la figure suivante :

Figure II.13:Formulaire   d’accueil

Après chargement du logiciel, ce formulaire disparaît et vous donne accès au Menu Général qui vous offre, à gauche, la possibilité de choisir l’opération à  effectuer en cliquant sur le bouton correspondant et, à droite, un espace d’un bref commentaire décrivant chaque bouton.

Figure II.14 : Menu Général principal

Un petit commentaire de guide d’utilisateur, incorporé à ce logiciel, est accessible en pointant simplement sur chaque bouton du Menu général.

1) Bouton « 1. Création Eléments statiques »

En cliquant sur le bouton « 1. Création Eléments statiques », le formulaire suivant s’affiche, vous proposant à gauche les boutons de commande et à droite un commentaire sur chaque bouton. 

Figure II .15 : Sous-Menu Création éléments statiques

Un clic sur « Créer Catégorie » vous ouvre l’interface de saisie pour ajouter une nouvelle catégorie, modifier une catégorie existante ou  en supprimer une sur la liste de catégorie des matériels et fournitures existante,  Voici la procédure :

Figure II.16: Formulaire de création, Modification et suppression des catégories

  • Pour créer une nouvelle catégorie : saisir d’abord le code de la catégorie (10 caractères au maximum) ensuite sa désignation (90 caractères max)  enfin cliquer sur le bouton « Créer » ; un message vous indiquant la réussite de l’opération apparait à l’écran sinon un message d’erreur.
  • Pour modifier une existante, dérouler la liste au Code Catégorie pour le choisir ; après validation, le champ de la désignation se complète automatiquement, effectuez  votre modification (uniquement sur la désignation) puis cliquer sur le bouton « Modifier ». un message vous confirmera la réussite de la modification. 
  • Pour supprimer une catégorie, commencer par choisir la catégorie à supprimer, puis cliquer sur « Supprimer ». un message de confirmation vous demande si vous voulez réellement supprimer cet élément, puis cliquer sur « Oui » pour supprimer ou sur « Non » pour quitter.

2) Bouton « 2. Elaboration des documents »

Ce bouton permet de créer les documents les plus souvent utilisés au bureau approvisionnement.

Un click dessus vous ouvre le formulaire suivant :

Figure II.17 : Sous-Menu Elaboration des documents

En cliquant sur le  bouton « Demande d’offre » vous accédez au formulaire suivant  où vous saisissez uniquement le numéro et la date de la demande :

Figure II.18 : Formulaire Demande d’offre

Après avoir saisie le numéro et la date de la demande, cliquer sur le bouton « Créer »  pour enregistrer la demande, puis sur suivant pour ouvrir le formulaire de saisie des détails de la demande d’offre sur lequel il faut enregistrer les articles composant la demande l’un après l’autre.

Figure II.19 : Formulaire Détail de la commande

Pour chaque article choisi, il faut toujours préciser le numéro de la demande d’offre, puis cliquer sur le bouton « Sauvegarder » pour enregistrer la demande d’offre.  Cliquer sur  « Aperçu » pour visualiser la demande d’offre et sur « Imprimer » pour sortir la demande sur support papier, enfin sur « Retour » pour quitter.

En cliquant sur « Aperçu », la demande d’offre se présente comme suit :

Figure II.20 : Aperçu de la fiche de demande d’offre

  • Bouton « 3. Saisie et/ou Règlement Facture  »

Ce bouton permet d’enregistrer les factures sans détails. 

Figure II.21 : Formulaire d’enregistrement de la facture

Après avoir saisi la facture, cliquer sur « Enregistrer » puis sur « Détail Facture »  afin d’en préciser les détails et faire la mise en stock au formulaire suivant :

Notez que c’est au moment  de la saisie des détails de la facture que s’effectue la mise en stock des matériels et fournitures l’un après l’autre en cliquant sur « Stockage » du formulaire cidessous.

g

Figure II.22 : Formulaire Détail-Facture

  • Bouton « 4. Opérations d’Entrée-Sortie »

Ce bouton permet de gérer les mouvements du stock : les entrées  en stock sont conditionnées par la facture et les sorties en stock  sont conditionnées par la réquisition. Un clic sur ce bouton ouvre un sous-menu sur lequel il faut  choisir l’action à faire :

Figure II.23 : Sous menu opérations d’entrée -sortie

En cliquant sur « Entrée Matériels » vous ouvrez un formulaire quasi-vide sur lequel il faut encore préciser l’opération à effectuer pour faire apparaître les éléments correspondant. Après avoir cliqué sur  « cliquer ici » de  «1. Entrée en stock » le formulaire se présente comme cidessous indiqué :

Figure II.24 : Formulaire d’Entrée – Sortie en stock

Renseigner tous les champs, puis cliquer sur « Enregistrer » et sur « Suivant » pour saisir les détails, tous les articles l’un après l’autre, au formulaire suivant :

Figure II.25 : Formulaire d’enregistrement des opérations d’entrée

Cliquer sur « Confirmer » pour confirmer l’opération enfin sur « Retour » pour aller au Menu.

  • Bouton « 5. Aperçu et Impression »

Comme le nom l’indique, ce bouton permet de faire un aperçu avant impression des documents en cliquant sur « Aperçu » à gauche du formulaire et l’impression proprement dite sur support papier en cliquant sur « Imprimer » à droite du formulaire.

Figure II.26. Sous Menu « Aperçu et Impression »

  • Bouton « 5. Quitter le programme »

Ce bouton permet de fermer l’application en toute sécurité, fermeture qu’il faut  valider en répondant par  « Oui » à la boite de dialogue de confirmation, sinon cliquer sur « Non ».

Figure II.27 : Boite de dialogue de fermeture

Partager ce travail sur :