Home

Réalisation d`une application de gestion de production: Rapport de

image

Contents

1. 10 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 3 24 TRANSFORMATION Chaque tuple de cette table repr sente un intrant particulier permettant de donner un produit sortant particulier Elle inclut donc deux cl s trang res et la cl primaire de cette table est la combinaison de ces deux cl s L attribut de relation QUANTITE pr cise la quantit d intrant n cessaire pour fabriquer une quantit unitaire de produit sortant CREATE TABLE TRANSFORMATION INTRANT INT NOT NULL SORTANT INT NOT NULL QUANTITE_INTRANT REAL NOT NULL PRIMARY KEY INTRANT SORTANT FOREIGN KEY INTRANT REFERENCES PRODUIT PROD_NUM FOREIGN KEY SORTANT REFERENCES PRODUIT PROD_NUM 11 19 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 4 Impl mentation de la base de donn es 41 Int grit r f rentielle MySQL ne v rifiant pas automatiquement les contraintes d int grit r f rentielle nous avons da proc der a la cr ation d index pour l ensemble des cl s trang res ce qui nous a permis en sp cifiant InnoDB comme fype de la table d exiger le respect des contraintes d int grit r f rentielle 4 2 Contraintes s mantiques Certaines contraintes comme le non d passement de la capacit maximale de production pour les unit s de fabrication ou de la capacit maximale de stockage pour les d pots doivent galement tre v rifi es MySQL ne
2. 2 19 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 1 3 Limitations Etant donn la taille du projet initialement con u pour un groupe de 5 personnes il ne nous a pas t paru utile d impl menter l ensemble des exigences sur les transactions Nous avons pr f r nous concentrer sur l essentiel sur ce qui constituait nos yeux le coeur du projet une mod lisation rigoureuse de la base de donn es et des transactions correspondantes Plus pr cis ment voici les am liorations que nous pourrions apporter l application existante pour respecter compl tement les exigences du projet 1 V rification syst matique de certaines contraintes s mantiques telle que la production actuelle comprise entre la production minimum et maximum la quantit de produit en stock plus petite que la capacite totale de stockage Comme MySQL ne traite pas directement ces assertions il faut nous en charger nous m mes au niveau du langage h te c est dire PHP 2 V rification des valeurs vides ou incorrectes lors d ajout ou de modification de donn es 3 Conception de formulaires pr cis et complets pour l ajout la modification et la suppression de donn es pour toutes les entit s de la base de donn es Actuelleemnt seul le formulaire d ajout de produits est impl ment titre d exemple 4 Am lioration g n rale de l interface graphique suppression de la d coration scoute mise en page plus er
3. Stikilib query queryl query select from PRODUIT S tableau produit lt table cellspacing 1pt cellpadding 10pt border 1pt tr lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt UNITE DE MESURE lt b gt lt td gt lt td gt lt b gt PRIX lt b gt lt td gt lt td gt lt b gt INTRANTS lt b gt lt tr gt Slisting_complet Stikilib gt query query while ligne listing_complet gt fetchRow DB_FETCHMODE ASSOC Stableau_produit Stableau_produit lt tr gt s lt td gt Sligne PROD_NUM lt td gt lt td gt ligne NOM lt td gt lt td gt Sligne UNITE lt td gt lt td gt ligne PRIX eur lt td gt lt TD gt matieres_premieres ligne PROD_NUM lt td gt lt tr gt tableau produit tableau produit table Ssmarty gt assign tableau Stableau produit Ssmarty gt assign ajout produit if isset REQUEST requete specialel query select from PRODUIT tableau produit lt h4 gt Cliquez sur un produit pour l analyser h4 br lt table cellspacing 1pt cellpadding 10pt border 1pt tr lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt UNITE DE MESURE lt b gt lt td gt lt td gt lt b gt PRIX lt b gt lt td gt lt td
4. nom usine commande 1igne COM NUM td tr Stableau_res Stableau_res lt table gt 18 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 Ssmarty gt assign tableau Stableau res Ssmarty gt assign 2 ajout Q UU if isset _REQUEST requete_speciale2 Sformulaire lt h4 gt Choisissez vos parametres lt h4 gt lt form action tiki db2 php method post gt umero produit lt input type text name num size 2 gt lt br gt Date depart format YYYY MM DD lt input type text name datel size 10 gt lt br gt Date fin format YYYY MM DD lt input type text name date2 size 10 gt lt br gt lt input type submit name calculer_montant value Calculer le montant total gt lt form gt Ssmarty gt assign tableau Sformulaire Ssmarty gt assign ajout if isset REQUEST calculer montant Snum REQUEST num Sdatel REQUEST datel Sdate2 REQUEST date2 Vocatur me query select from CONTENU COMMANDE where PROD_NUM Snum Sresultatl Stikilib gt query query while S ligne resultatl fetchRow DB FETCHMODE ASSOC if is_between_dates eo mE y Sresultat2 Sresultat2 0 S Sligne QUANTITE 0 prix Sligne PROD NUM Sresultat3 Le resultat total est
5. and COM DATE BETWEEN datel AND date2 Sresultatl tikilib query query resultat2 resultatl fetchRow DB FETCHMODE ASSOC if return resultat2 COM NUM com num Ert function nom usine commande com num extract SGLOBALS Sresultat2 Squery select from COMMAND here CO Sresultatl Stikilib gt query query GN an wW return y NUM com num ETCHMODI return nom usine resultat2 FAB NUM resultat2 S resultatl fetchRow DB FI ASSOC P if isset REQUEST afficher produits query select from PRODUIT tableau produit lt table cellspacing lpt cellpadding 10pt border 1pt tr td b NUMERO b td lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt UNITE DE MESURE lt b gt lt td gt lt td gt lt b gt PRIX lt b gt lt td gt lt td gt lt b gt INTRANTS lt b gt lt tr gt Slisting_complet Stikilib gt query query while S ligne listing_complet gt fetchRow DB_FETCHMODE_ASSOC Stableau_produit tableau_produit lt tr gt lt td gt S ligne PROD_NUM lt td gt lt td gt S ligne NOM lt td gt 15 19 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 lt td gt Sligne UNITE lt td gt lt td gt ligne PRIX eur lt td gt lt TD gt matieres_premieres Sligne PR
6. Introduction et cahier de charges 11 Objectif du pr sent rapport Ce rapport r dig dans le cadre du projet du cours LINF 2172 Conception de bases de donn es poursuit un double objectif 1 D tailler la m thodologie utilis e dans la conception et l impl mentation de l application 2 Pr ciser chaque tape les r sultats obtenus et particuli rement le fonctionnement de l appli cation finale Le prototype de l application est disponible cette adresse http www2 awake2life com vm008 tiki db2 php Celle ci a t d ploy e sur le site de mon unit scoute qui disposait en l occurence de l architecture MySQL Apache PHP n cessaire au bon fonctionnement de l application 12 Cahier de charges 1 2 1 Exigences sur la base de donn es Il nous est demand de concevoir une base de donn es destin e la gestion de la production et des stocks d une soci t Pour ce faire une description narrative de celle ci est fournie Une unit de fabrication est identifi e par un num ro et caract ris e par un nom une localisation et une capacit globale de production Elle peut fabriquer plusieurs produits A tout moment on connait pour une unit de fabrication et pour un produit que cette unit fabrique la quantit en cours de fabrication et les capacit s minimum et maximum de fabrication Un d p t est galement identifi par un num ro et poss de un nom une localisation et une capacit gl
7. gt lt b gt INTRANTS lt b gt lt tr gt Slisting_complet Stikilib gt query query while S ligne listing_complet gt fetchRow DB_FETCHMODE ASSOC Stableau_produit Stableau_produit lt tr gt lt td gt lt a href tiki db2 php requete_specialelsuite num Sligne PROD_NUM gt Sligne PROD_NUM lt a gt lt td gt lt td gt S ligne NOM lt td gt lt td gt Sligne UNITE lt td gt td ligne PRIX eur lt td gt lt TD gt matieres_premieres ligne PROD_NUM lt td gt lt tr gt tableau produit tableau produit table smarty assign tableau Stableau produit smarty assign ajout if isset REQUEST requete specialelsuite Snum REQUEST num query select from CONTENU COMMANDE where PROD NUM num Slisting tikilib gt query query Stableau_res lt h4 gt Identifiant des lignes de commande et nom des unites de fabrication pour le produit nom produit num lt h4 gt lt table cellspacing 1pt cellpadding 10pt border l1pt gt lt tr gt lt td gt lt b gt Numero ligne de commande lt b gt lt td gt lt td gt lt b gt Nom de l unite de fabrication lt b gt lt td gt lt tr gt while Sligne listing gt fetchRow DB FETCHMODE ASSOC S tableau res S tableau res tr td 1igne COM NUM lt td gt td
8. lt table gt Ssmarty gt assign tableau Stableau_produit_fabrique smarty assign ajout produit en fabrication if isset REQUEST afficher produits stockes query select from PRODUIT STOCKE S tableau produit stocke lt table cellspacing lpt cellpadding 10pt border l1pt gt lt tr gt lt td gt lt b gt NUMERO DEPOT lt b gt lt td gt lt td gt lt b gt NUMERO PRODUIT lt b gt lt lt td gt lt td gt lt b gt QUANTITE lt b gt lt td gt lt tr gt Slisting_complet Stikilib gt query query while ligne listing_complet gt fetchRow DB_FETCHMODE_ASSOC tableau_ produit _stocke tableau produit _stocke lt tr gt td nom depot 1igne DEP NUM td td nom produit 1igne PROD NUM td td 1igne QUANTITE DUE unite S ligne PROD_NUM lt td gt lt tr gt tableau produit stocke tableau produit stocke table Ssmarty gt assign tableau S tableau produit stocke smarty assign ajout produit en stock if isset REQUEST ajouter produit num REQUEST num nom REQUEST nom Sunite REQUEST unite 17 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 Sprix _REQUEST prix Squeryl INSERT INTO PRODUIT VALUES Snum Snom S unite S prix
9. lt b gt CAPACITE TOTALE DE STOCKAGE lt b gt lt td gt lt tr gt Slisting_complet Stikilib gt query query while ligne listing complet fetchRow DB FETCHMODE ASSOC tableau depot tableau depot tr td ligne DEP NUM td td ligne NOM td lt td gt S ligne LOCALISATION lt td gt lt td gt S ligne CAPA_STOCK lt td gt lt tr gt j tableau depot tableau depot table smarty assign tableau S tableau depot smarty assign ajout depot if isset REQUEST afficher commandes query select from COMMANDE tableau commande lt table cellspacing lpt cellpadding 10pt border 1pt gt lt tr gt lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt DATE lt b gt lt lt td gt lt td gt lt b gt FABRIQUE QUI PASSE COMMANDE lt b gt lt td gt lt td gt lt b gt DEPOT QUI FOURNIT COMMANDE lt b gt lt td gt lt td gt lt b gt PRODUITS COMMANDES lt b gt lt td gt lt tr gt T 16 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 Slisting_complet S tikilib query query while ligne listing_complet gt fetchRow DB_FETCHMODE ASSOC Stableau_commande Stableau_commande lt tr gt lt td gt Sligne COM_NUM lt td gt lt td gt db_to_form ligne COM_DATE lt td gt td nom usine ligne FAB
10. permettant pas de sp cifier directement celles ci la seule mani re de proc der est deles impl menter au niveau du langage h te PHP Cette impl mentation tant particuli rement fastidieuse mettre en place correctement nous ne l avons pas r alis e en pratique dans notre appli cation Voici la liste des contraintes 1 Qt min de fabrication lt Qt en fabrication X Qt max de fabrication pour un produit fabriqu donn 2 Lasomme des Qt s en fabrication doit tre lt la capacit max de production pour une unit de fabrication donn e 3 Lasomme desQt s dues doit tre lt a la capacit maximale de stockage pour un d pot donn 12 19 LINF 2172 Rapport de projet Pierre Lison 31 ao t 2004 5 Conception et impl mentation des transactions Le code source PHP de notre application est ins r en annexe A titre d exemple nous en fournissons et expliquons ici un fragment if isset S REQUEST afficher usines Squery select from USINE listing complet S tikilib query query tableau usine lt table cellspacing lpt cellpadding 10pt border 1pt gt tr lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt LOCALISATION lt b gt lt td gt lt td gt lt b gt CAPACITE TOTALE DE PRODUCTION lt b gt lt td gt lt tr gt while ligne listing complet fetchRow DB FE
11. strval Sresultat2 EUR Ssmarty gt assign tableau Sresultat3 Ssmarty gt assign ajout if isset _REQUEST requete_speciale3 query select from PRODUIT Stableau_produit lt table cellspacing 1pt cellpadding 10pt border 1pt tr lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt UNITE DE MESURE lt b gt lt td gt lt td gt lt b gt PRIX lt b gt lt td gt lt td gt lt b gt INTRANTS lt b gt lt tr gt Slisting_complet Stikilib gt query query while ligne listing_complet gt fetchRow DB_FETCHMODE_ASSOC Stableau_produit Stableau_produit lt tr gt s td 1igne PROD NUM c td lt td gt ligne NOM lt td gt lt td gt Sligne UNITE lt td gt lt td gt ligne PRIX eur lt td gt lt TD gt matieres_premieres ligne PROD_NUM lt td gt lt tr gt tableau produit tableau produit table Ssmarty gt assign tableau Stableau produit Ssmarty gt assign ajout Ssmarty gt assign mid tiki db2 tpl smarty display styles style base tiki tpl 19 19
12. E FAB NUM INT NOT NULL PROD NUM INT NOT NULL MAX FAB REAL MIN FAB REAL FAB ACTUELLE REAL NOT NULL PRIMARY KEY FAB NUM PROD NUM FOREIGN KEY FAB NUM REFERENCES UNITE DE FABRICATION FAB NUM FOREIGN KEY PROD NUM REFERENCES PRODUIT PROD NUM 3 2 2 PRODUIT STOCKE Chaque tuple de cette table repr sente un produit particulier stock dans un d pot particulier Elle inclut donc deux cl s trang res et la cl primaire de cette table est la combinaison de ces deux cl s De plus nous y incluons l attribut QUANTITE DUE de la relation STOCKE CREATE TABLE PRODUIT STOCKE DEP NUM INT NOT NULL PROD NUM INT NOT NULL QUANTITE DUE REAL NOT NULL PRIMARY KEY DEP NUM PROD NUM FOREIGN KEY DEP NUM REFERENCES DEPOT DEP NUM FOREIGN KEY PROD NUM REFERENCES PRODUIT PROD NUM 3 2 3 CONTENU COMMANDE Chaque tuple de cette table repr sente un produit particulier compris dans une commande partic uli re Elle inclut donc deux cl s trang res et la cl primaire de cette table est la combinaison de ces deux cl s De plus nous y incluons l attribut QUANTITE de la relation COMPREND CREATE TABLE CONTENU COMMANDE COM NUM INT NOT NULL PROD NUM INT NOT NULL OUANTITE REAL NOT NULL PRIMARY KEY COM NUM PROD NUM FOREIGN KEY COM NUM REFERENCES COMMANDE COM NUM FOREIGN KEY PROD NUM REFERENCES PRODUIT PROD NUM
13. IQUE FABRIQUE relie UNITE DE FABRICATION PRODUIT Une unit peut fabriquer 0 N produits et un produit peut tre fabriqu 0 M unit s diff rentes Trois attributs sont propres la relation Qt min de fabrication Qt max de fabrication et Qt de fabrication qui correspond la quantit actuelle tous trois des r els Qt _En_Fabrication Quantit Max Fabrication Qt Min Fabrication UNITE DE FABRICATION FABRIQUE PRODUIT 2 2 2 STOCKE STOCKE relie DEPOT PRODUIT Un d pot peut stocker 0 N produits et un produit peut tre stock 0 M d pots diff rents Un attribut de relation est d fini Qt due un r el 5 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 Qt due PRODUIT 2 2 3 PASSE PASSE relie UNITE DE FABRICATION COMMANDE Une unit peut passer 0 N commandes mais une commande est toujours pass e par une et une seule unit de fabrication la participation est donc totale 0 N 1 1 UNITE_DE_FABRICATION O 2 2 4 FOURNIT FOURNIT relie DEPOT COMMANDE Un d pot peut fournir 0 N commandes mais une commande est toujours fournie par un et un seul d p t la participation est donc totale 0 N 1 1 COMMANDE 2 2 5 COMPREND COMPREND relie COMMANDE PRODUIT Une commande peut contenir 1 N produits la description indique qu une commande doit contenir au moins un produit la participation est donc totale et un produi
14. NUM td td nom depot ligne DEP_NUM lt td gt td produits commande ligne COM_NUM lt td gt lt tr gt tableau commande tableau commande table smarty assign tableau S tableau commande Ssmarty gt assign ajout e commande if isset REQUEST afficher produits fabriques query select from PRODUIT FABRIQUE tableau produit fabrique lt table cellspacing 1pt cellpadding 10pt border lpt gt lt tr gt lt td gt lt b gt NUMERO FABRIQUE lt b gt lt td gt lt td gt lt b gt NUMERO PRODUIT lt b gt lt lt td gt lt td gt lt b gt CAPACITE MINIMALE DE PRODUCTION lt b gt lt td gt lt td gt lt b gt CAPACITE MAXIMALE DE PRODUCTION lt b gt lt td gt lt TD gt lt B gt PRODUCTION ACTUELLE lt B gt lt TD gt lt tr gt Slisting_complet Stikilib gt query query while S ligne listing_complet gt fetchRow DB_FETCHMODE_ASSOC Stableau_produit_fabrique Stableau_produit_fabrique lt tr gt td nom usine ligne FAB NUM td td nom produit ligne PROD_NUM lt td gt td S ligne MIN FAB td td S ligne MAX FAB td lt TD gt Sligne FAB_ACTUELLE unite Sligne PROD_NUM lt TD gt lt tr gt T EA Stableau_produit_fabrique Stableau_produit_fabrique
15. OD_NUM lt td gt lt tr gt tableau produit tableau produit table smarty assign tableau Stableau produit Ssmarty gt assign ajout produit if isset REQUEST afficher usines query select from USINE tableau usine lt table cellspacing lpt cellpadding 10pt border 1pt gt lt tr gt lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt LOCALISATION lt b gt lt td gt lt td gt lt b gt CAPACITE TOTALE DE PRODUCTION lt b gt lt td gt lt tr gt Slisting_complet Stikilib gt query query while S ligne listing_complet gt fetchRow DB_FETCHMODE ASSOC Stableau_usine Stableau_usine lt tr gt lt td gt ligne FAB_NUM lt td gt lt td gt ligne NOM lt td gt lt td gt ligne LOCALISATION lt td gt lt td gt ligne CAPA_PROD lt td gt lt tr gt tableau usine tableau usine table Ssmarty gt assign tableau S tableau usine smarty assign ajout e usine if isset REQUEST afficher depots query select from DEPOT S tableau depot lt table cellspacing lpt cellpadding 10pt border 1pt gt lt tr gt lt td gt lt b gt NUMERO lt b gt lt td gt lt td gt lt b gt NOM lt b gt lt lt td gt lt td gt lt b gt LOCALISATION lt b gt lt td gt lt td gt
16. R alisation d une application de gestion de production Rapport de projet Pierre Lison tudiant INFO 22 plison student fsa ucl ac be Universit Catholique de Louvain Facult des Sciences Appliqu es D partement d ing nierie informatique 31 ao t 2004 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 Table des mati res 1 Introduction et cahier de charges 2 1 1 Objectif du pr sent rapport is Sy aie Roue ANNE Ari Serb nes 2 12 CAGE de chargo re ser a oa ng ve god ea we OR e ars ne ar rs 2 To Limitations AS e arent eve Soter o etat me eet AN EM ee esti tor sy e s Rd a RM 3 2 Mod lisation ER de la base de donn es 4 2 1 Mod lisation des entit s et attributs 4 2 2 Mod lisation des relations 5 2 3 V ed ens mble 22 22288 oe exo p ua Ed EE OX EA mur Eo Ree dE yi 24 Alternatives et raffinements possibles 8 3 Mod lisation relationelle de la base de donn es 9 3 1 Traduction des entit s r guli res 2 0 wv Sy we Seb OLE dert ee us 3 2 Traduction des relations N M eA 10 4 Impl mentation de la base de donn es 12 AT JIntegenitegercrenBelle suus b ceo Pe Sees Xov a Seed d cedo d re E dede Nes 12 T2 Contraintes SEHIaO quedes ds a athe Eu NOUS ux ee vm E DOG X 12 5 Conception et impl mentation des transactions 13 A Fichiertiki db2 php 14 1 19 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 1
17. SATION VARCHAR 30 CAPA STOCK REAL PRIMARY KEY DEP NUM 3 14 COMMANDE Ici puisque nous avons deux relations 1 N la relation PASSE entre UNITE DE FABRICATION et COMMANDE et la relation FOURNIT entre DEPOT et COMMANDE nous devons inclure dans la table deux cl s trang res FAB NUM et DEP NUM le num ro de l unit de fabrication et le num ro du d pot respectivement qui correspondent la commande CREATE TABLE COMMANDE COM NUM INT NOT NULL COM DATE DATE NOT NULL FAB NUM INT NOT NULL DEP NUM INT NOT NULL PRIMARY KEY COM NUM FOREIGN KEY FAB NUM REFERENCES UNITE DE FABRICATION FAB NUM FOREIGN KEY DEP NUM REFERENCES DEPOT DEP NUM Elmasri and Navathe Fundamentals of Database Systems Addison Wesley 2004 9 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 3 2 Traduction des relations N M Pour chaque relation de type N M nous devons construire une nouvelle table incluant comme cl s trang res les cl s primaires des entit s participantes Nous avons quatre relations de ce type 3 2 1 PRODUIT FABRIQUE Chaque tuple de cette table repr sente un produit particulier fabriqu dans une unit particuli re Elle inclut donc deux cl s trang res et la cl primaire de cette table est la combinaison de ces deux cl s De plus nous y incluons les trois attributs de la relation FABRIQUE CREATE TABLE PRODUIT _ FABRIQU
18. TCHMODE ASSOC tableau usine tableau usine tr lt td gt lt td gt lt td gt lt td gt ligne FAB_NUM lt td gt ligne NOM lt td gt ligne LOCALISATION lt td gt Sligne CAPA_PROD lt td gt lt tr gt Stableau_usine Stableau_usine lt table gt smarty assign Quelques commentaires sur celui ci tableau tableau usine La premi re et deuxi me ligne l int rieur de la structure i f expriment la requ te SOL Tikilib est une librairie nous permettant d acc der facilement la base de donn es La troisi me ligne construit le d but du tableau HTML La boucle while parcourt incr mentalement l ensemble des tuples renvoy s par la requ te SOL Pour chaque tuple nous l ins rons dans notre cha ne de caract res tableau usinel d cor des balises HTML n cessaires Une fois l ensemble des tuples parcouru nous fermons le tableau et nous l ins rons l int rieur de la page Smarty est un moteur de templates INous avons ici utilis le terme usine en lieu et place d unit de fabrication plus long transcrire 13 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 A Fichier tiki db2 php php SHeader cvsroot tikiwiki tiki tiki remind password php v 1 8 2 2 2004 03 28 09 59 53 damosoft Exp Copyright c 2002 2004 Luis Argerich Garland Foster Eduardo Polidor et al All R
19. caract res 2 1 2 PRODUIT Voici le sch ma de l entit PRODUIT qui satisfait aux exigences du cahier des charges PRODUIT Chaque produit est donc compos d un num ro un entier cl primaire de l entit la relation du produit son num ro est injective d un nom une chaine de caract res d un prix un r el d une unit de mesure une chaine de caract res 2 1 3 DEPOT Voici le sch ma de l entit DEPOT qui satisfait aux exigences du cahier des charges 4 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 Capacit Stockage Chaque d pot est donc compos d un num ro un entier cl primaire de l entit la relation du d pot son num ro est injective d un nom une chaine de caract res d une capacit maximale de stockage un r el d une localisation une cha ne de caract res 2 14 COMMANDE Voici le sch ma de l entit COMMANDE qui satisfait aux exigences du cahier des charges COMMANDE CD Quia D Chaque commande est donc compos e d un num ro un entier cl primaire de l entit la relation de la commande son num ro est injective x d un nom une cha ne de caract res d une date de type date 2 2 Mod lisation des relations Int ressons nous pr sent aux relations entre les diff rentes entit s Nous utiliserons la notation min max pour les contraintes structurelles 2 2 1 FABR
20. gonomique 5 Mise en place de liens l int rieur des tableaux permettant d acc der une information sur un tuple sp cifique 6 Ecriture de sp cifications formelles ou semi formelles pour l ensemble du code 7 Conception d une batterie de tests compl te pour v rifier les exigences 8 Ecriture d un mode d emploi 9 etc 3 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 2 Mod lisation ER de la base de donn es 2 1 Mod lisation des entit s et attributs La premi re tape dans la conception de notre mod le ER Entity Relationship est la d couverte des entit s objets du monde r el dot s d une existence ind pendante et de leurs attributs respectifs les propri t s qui caract risent ces derni res A partir de la description qui nous est fournie nous pouvons d ores et d j pingler certains concepts qui nous faudra mod liser par des entit s 2 1 1 UNITE DE FABRICATION Voici le sch ma de l entit UNITE DE FABRICATION qui satisfait aux exigences du cahier des charges d taill la section pr c dente Capacite Production Cmno X UNITE_DE_FABRICATION Localisation Chaque unit est donc compos e d un num ro un entier cl primaire de l entit la relation de l unit son num ro est injective d un nom une chaine de caract res d une capacit maximale de production un r el d une localisation une cha ne de
21. ights Reserved See copyright txt for details and a complete list of authors Licensed under the GNU LESSER GENERAL PUBLIC LICENSE See license txt for details Initialization require once tiki setup php include once lib dcs dcslib php if isset Sdcslib dcslib new DCSLib dbTiki function db to form date Sd array Sd day substr date 8 2 Sd month substr date 5 2 Sd year substr Sdate 0 4 return Sd day Sd month Sd year function unite Sprod_num extract GLOBALS query select from PRODUIT where PROD NUM prod num Sresultatl tikilib query query resultat2 resultatl fetchRow DB FETCHMODE ASSOC return Sresultat2 UNITE function nom produit prod num extract GLOBALS query select from PRODUIT where PROD NUM prod num Sresultatl tikilib query query resultat2 resultatl 5fetchRow DB FETCHMODE ASSOC return Sresultat2 NOM function nom usine fab num extract SGLOBALS query select from USINE where FAB NUM S fab num Sresultatl tikilib query query resultat2 resultatl 5fetchRow DB FETCHMODE ASSOC return Sresultat2 NOM function nom depot dep num extract GLOBALS query select from DEPOT where DEP NUM dep num Sresultatl tikilib query query resultat2 resul
22. obale de stockage Un d p t peut stocker plusieurs produits A chaque instant on connait pour un d p t et pour un produit qui y est stock la quantit due Un produit peut tre fabriqu par plusieurs unit s de fabrication et sock dans plusieurs d p ts A chaque produit est associ un num ro qui l identifie Un produit poss de galement un nom une unit de mesure et un prix Une quantit unit de produit fini ou semi fini est toujours fabriqu e partir de quantit s d termin es d autres produits semi finis et ou de mati res premi res qu une unit de fabrication commande ce d pot Une commande d une unit de fabrication est adress e un seul d p t est identifi e par un num ro poss de une date et concerne un ou plusieurs produits dont elle sp cifie la quantit command e 1 2 2 Exigences sur les transactions Au point de vue des transactions deux exigences sont sp cifi es 1 Interfacer l application de telle mani re ce qu un utilisateur puisse ins rer supprimer modifier des donn es 2 Programmer les requ tes suivantes a Donner le nom des unit s de fabrication ainsi que l identifiant des lignes de commandes d un produit b Donner le montant total en EUR associ aux commandes r alis es pour un produit donn durant un certain intervalle de temps entre deux dates c Donner l identifiant et le nom des produits et ou mati res premi res qui composent un produit donn
23. produits finis Ce n est pour l instant pas n cessaire car la description fournie ne pr cise aucun attribut qui leur serait particulier N ammoins si la cahier des charges venait changer dans le sens d une telle distinction cette sp cialisation pourrait tre utile Pour mod liser le concept de commande nous avons aussi pens une relation ternaire Mais un probl me s est pos pour le lien entre COMMANDE et PRODUIT il est en effet difficile d y noter explicitement qu une commande peut contenir plusieurs produits Notre choix de repr sente une commande par une entit distincte est donc pr f rable 8 19 Rapport de projet LINE 2172 Pierre Lison 31 ao t 2004 3 Mod lisation relationnelle de la base de donn es Une fois la mod lisation ER termin e nous passons la traduction de celle ci en mod le logique qui dans notre cas est un mod le relationnel Nous utiliserons ici la m thodologie pr sent e au chapitre 7 du livre d Elmasri et Navathe 3 1 Traduction des entit s r guli res 3 1 1 UNITE DE FABRICATION CREATE TABLE UNITE DE FABRICATION FAB NUM INT NOT NULL NOM VARCHAR 15 LOCALISATION VARCHAR 30 CAPA PROD REAL PRIMARY KEY FAB NUM 3 1 2 PRODUIT CREATE TABLE PRODUIT PROD NUM INT NOT NULL NOM VARCHAR 15 UNITE VARCHAR 10 PRIX REAL NOT NULL PRIMARY KEY PROD NUM 3 13 DEPOT CREATE TABLE DEPOT DEP NUM INT NOT NULL NOM VARCHAR 15 LOCALI
24. t peut faire partie de 0 M commandes Un attribut est d finit Quantit produit un r el Quantit Produit 1 M COMPREND COMMANDE PRODUIT 2 2 6 INTRANT DE INTRANT DE relie PRODUIT PRODUIT Un produit mati re premi re produit semi fini peut engendrer 0 N autres produits et un produit peut tre engendr par 0 M produits Un attribut est d fini Qt intrant un r el qui correspond la quantit d intrant n cessaire pour la fabrication d une quantit unitaire du produit sortant Quantit Intrant 0 N PRODUIT TT S 0 M Intrant est la traduction fran aise de input 6 19 Rapport de projet Pierre Lison 31 ao t 2004 LINF 2172 2 3 Vue d ensemble dentes 2 Qt En Fabrication ece 2 Quantit Max Fabrication Qt Min Fabrication 0 N O 0 m FABRIQUE Capacite Production UNITE_DE_FABRICATION Voici a pr sent le sch ma complet qui r sulte de nos analyses pr Quantit Intrant 0 M 0 N 9 PRODUIT Quantit Produit COMPREND COMMANDE CD Que e 0 N Capacit Stockage 7 19 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 2 4 Alternatives et raffinements possibles Le mod le ER actuel peut tre am lior de diff rentes mani res On pourrait appliquer une sp cialisation l entit PRODUIT en y distinguant les mati res premi res les produits semis finis et
25. tatl 5fetchRow DB FETCHMODE ASSOC return resultat2 NOM function matieres premieres prod num extract GLOBALS 14 19 Rapport de projet LINF 2172 Pierre Lison 31 ao t 2004 Sresultat2 query select from TRANSFORMATION where SORTANT S prod num Sresultatl Stikilib gt query query while S ligne resultatl fetchRow DB FETCHMODE ASSOC Sresultat2 Sresultat2 Sligne QUANTITE_INTRANT unite S ligne INTRANT return Sresultat2 function produits commande com num nom produit 1igne INTRANT br extract SGLOBALS Sresultat2 query select from CONTENU_COMMANDE where COM NUM com num Sresultatl S tikilib query query while S ligne resultatl fetchRow DB FETCHMODE ASSOC Sresultat2 resultat2 ligne QUANTITE return Sresultat2 function prix prod num unite ligne PROD NUM nom produit 1igne PROD NUM br extract SGLOBALS query select from PRODUIT where PROD NUM prod num Sresultatl tikilib query query resultat2 resultatl fetchRow DB FETCHMODE ASSOC return Sresultat2 PRIX function is between dates com num Sdatel Sdate2 extract SGLOBALS Sresultat2 Squery select from COMMANDE where COM_NUM Scom_num

Download Pdf Manuals

image

Related Search

Related Contents

The Sleaford Observatory Users Manual  液晶プロジェクター  Document  Serviço de Suporte de Hardware com Devolução à HP  ProTime  Product User Manual  LSC20 - SIKO  B-Tech BT4000    Tradition  

Copyright © All rights reserved.
Failed to retrieve file