Ralis par : Soutenu le : 18/06/2009 Faical TAOIAF Mehdi OUERIAGLI Encadr par : MR.DAHH!"R Morad ALMA!I Moha""ed AMOU#I $
Au no" de dieu cl"ent% nous ne pourrons pas ouvrir ce rapport sans avoir re"erci Mr. Dahchour et Mr. Mourad RAJI qui nous a &eaucoup soutenus' On a &eaucoup apprci sa disponi&ilit et sa patience pour nous e(pliquer le )onctionne"ent du service' #urant * "ois d+enthousias"e et d+a"&iance% on ne saurait ,a"ais co""ent e(pri"er notre )iert qu+on a partag avec les "e"&res de notre groupe' -our nous le "ini pro,et est une opportunit )ructueuse qui )ait rveiller le c.t pro)essionnel d+une vie active' On tient / re"ercier toutes les personnes qui nous ont aid dans la ralisation de ce ""oire' En)in "erci / toute personne a0ant contri&u de pr1s ou de loin / la ralisation de ce travail' 2
A nos trs chers parents, la lumire de notre vie. A nos trs chers frres. A tous nos fdles amis. A toute notre famille. A tous ceux qui nous aiment, tous ceux que nous aimons. 3
PARTIE I :Merise :..5 Conception dvnement I. Rge de gestion .! II. Mode conceptuee de donnes "MCD#.$ III. Mode ogi%ue de donnes "M&D#.' (artie impmentation sur outi AC)** ..+ PARTIE II : ,isua -asic :./ I. Introduction .0 II. 1nrait...2 III. &es 3en4tres principaes..' 4onclusion5555555555555555526 6 : : : M)RI*) : 7 Conception dvnement I. Rgle de gestion : $' 4haque vhicule ad"et ! "atricule% couleur% 8" en cours' 2' 4haque vhicule est un "od1le' 3' 4haque "od1le ad"et !o" Mod1le% Marque% -uissance% 4aution' 6' 4haque vhicule peut avoir un t0pe de rvision / partir d+une date d&ut Rvision% date )in Rvision% co9t Rvision% 8ilo"trage' 7' 4haque contrat ad"et ! 4ontrat% #ate Eta&lisse"ent% #ate #&ut -rev% #ate Fin -rev' *' 4haque contrat a))ect par un vhicule' :' 4haque contrat a un t0pe de location' ;' 4haque t0pe de location appartient / un "od1le / partir du tari) de location' <' 4haque contrat ta&li pour un client' $=' 4haque client ad"et ! 4lient% !o" 4lient% Adresse% 4ode -ostal' $$' >4haque tat ad"et ! tat% pri( total% no"&re des ,ours% !o" 4lient% Adresse% 4ode -ostal% "atricule% couleur% 8" en cours% 4ode rvision% li&ell rvision' * $2' 4haque tat peut avoir ,uste une voiture' $3' 4haque tat contient un seul client' II. Mod1le conception de donnes?M4#@: : III. Mod1le relationnelle de donnes?ML#@: 4lient ?! 4lient% !o" 4lient% -rno" 4lient% 4I! 4lient% Adresse% 4ode -ostale% ! -er"is @ 4ontrat ?! 4ontrat% #ate Eta&lisse"ent% #&ut -rev% #ate Fin -rev% ! Matricule% 4ode Tari)@ Aghicule ?! Matricule% couleur% B" en cours% 4ode Tari)@ T0pe Location ?4ode Tari)% Li&elle Tari)@ Tari)er ?Tari) Location% ! Matricule% 4ode Tari)@ A))ecter ?! 4ontrat% ! Matricule@ EstCUn ? Matricule% !o" "od1le@ AssociationC6 ?#ate Revision% 4ode Rvision% ! Matricule@ Mod1le ?!o" Mod1le% Marque% -uissance% 4aution@ T0pe de Rvision ?4ode Rvision% Li&elle Rvision@ ; (artie impmentation sur outi AC)** &a ta5e a33ecter : 4ontient co""e cha"ps &a ta5e association : 4ontient co""e cha"ps &a ta5e cient : 4ontient co""e cha"ps &a ta5e contrat : 4ontient co""e cha"ps < &a ta5e est6un : 4ontient co""e cha"ps &a ta5e modee : 4ontient co""e cha"ps &a ta5e revision : 4ontient co""e cha"ps $= &a ta5e t7pe6ocation : 4ontient co""e cha"ps &a ta5e vehicue : 4ontient co""e cha"ps &e modee reationne : $$ : :
: ,isua -asic : $2 I. Introduction: La construction d+une application Aisual Dasic doit Etre ralise con)or""ent au( tapes suivantes : 4ration de l+inter)ace / l+aide d+un gnrateur interacti) d+inter)aces' Il s+agit de placer les inter acteurs ou contr.les de l+inter)ace dans les )enEtres de l+application' 4ette opration est ralise par "anipulation directe / partir d+une &oite / outils' Tester le co"porte"ent de l+inter)ace' Ensuite% d)inir le co"porte"ent de l+application en associant les procdures adquates au( di))rents vne"ents pouvant Etre gnre par les interacteurs de l+inter)ace' 4e "ode de dveloppe"ent rentre dans le cadre de la progra""ation vne"entielle' II. Gnralit : $3 1.1 Projet VB Un pro,et AD se co"pose d+un certain ense"&le de )ichiers qui constituent toute l+application' 4es constituants sont les suivants : > Le pro,et lui "E"e qui consiste en un )ichier te(te d+e(tension .#$p ?#isual %asic &ro'ect@ contenant des in)or"ations sur le t0pe du pro,et% les constituants de ce pro,et ainsi que des r)rences au( di))rentes &i&lioth1ques qui devront Etre co"piles avec l+application' On peut citer des )ichiers .!(% .D)) ou autres r)rences co""e la li&rairie des O&,ets d+acc1s au( &ases de donnes ?e(e"ple : Microso)t #AO 3'7 O&,ect Li&rar0@' -ar d)aut% lorsqu+on cre une nouvelle application% un pro,et est alors cre auto"atique"ent : &ro'et1.#$p > #es )ichiers te(tes d+e(tension .*r+ ?,!RM@ qui constituent les )euilles ?ou les )enEtres@ de l+application' Un pro,et contient au "oins une )euille ?par d)aut ,or+1.*r+@ et il peut contenir plusieurs )euilles' Les constituants "ini"au( d+une application AD sont un )ichier pro,et et un )ichier )euille ?&ro'et1.#$p - ,or+1.*r+@' > #es )ichiers &inaires d+e(tension ')r(' 4haque )ichier ')r( ?e(e"ple For"$')r(@ est associ / un )ichier ')r" qui porte le "E"e no" ?e(e"ple For"$')r"@' Les )ichiers ')r( contiennent les donnes &inaires des )euilles co""e les i"ages% les ic.nes etc'5 4e qui veut dire que si la )euille ne contient pas de donnes &inaires il n+0 aurait pas de )ichier ')r( associ' > #es )ichiers "odules qui sont des )ichiers te(te d+e(tension .$as ?%asic@' 4es )ichiers sont tr1s utiles dans la pratique puisque c+est le seul endroit oF l+on peut "ettre les donnes% structures et )onctions co""unes de l+application% accessi&les par tous les constituants du pro,et' Un )ichier "odule n+a pas de reprsentation visuelle% il ne lui est associ aucune )enEtre de l+inter)ace' $6 > #es "odules de classes qui sont des )ichiers te(tes d+e(tension .cls' 4es "odules% co""e les )ichiers "odules% ne sont pas associs / des )euilles' Il resse"&le au( "odules '&as avec la di))rence que ceu(>ci per"ettent la cration de classes / partir desquelles on peut instancier des o&,ets% et rentre alors dans le cadre de la progra""ation oriente o&,ets' 1.2 Notion de contrle La )euille ?ou For"@ est le co"posant de &ase d+une application AD' Une )euille est alors co"pose d+un ense"&le d+o&,ets graphiques qui per"ettent l+interaction avec l+utilisateur de l+application' 4e dernier clique sur des &outons% coche des cases% slectionne des options de "enu% crit sur des Gones de te(te etc'5 4es l"ents qui co"posent la )euille% ainsi que la )euille elle>"E"e% constituent des o$'ets .rap/i0ues qu+on appelle interacteurs ou contr1les'
1.2.1 Quest ce quun objet Une structuration classique d+un progra""e consiste en une structuration / deu( niveau( : les donnes d+une part et le code d+une autre part' Ainsi les donnes qui dcrivent ou caractrisent une "E"e entit sont regroupes ense"&le dans une "E"e structure de donne : un enregistre"ent ou un ta&leau' #e la "E"e "ani1re des instructions ralisant ense"&le une tache &ien d)inie et co"pl1te sont regroupes dans une "E"e procdure ou )onction' La -rogra""ation Oriente O&,ets ?&!!@ consiste en une structuration de haut niveau' Il s+agit de regrouper ense"&le les donnes et toutes le procdures qui per"ettent la gestion de ces donnes' On o&tient alors des entits co"portant / la )ois un ense"&le de donnes et une liste de procdures et de )onctions pour "anipuler ces donnes' La structure ainsi o&tenue est appele : !$'et' Un o&,et est alors une gnralisation de la notion d+enregistre"ent' Il est co"pos de deu( parties : $7 > Une partie statique ?)i(e@ co"pose de la liste des donnes de l+o&,et' On les appelle : Attri$uts ou &roprits' > Une partie d0na"ique qui dcrit le co"porte"ent ou les )onctionnalits de l+o&,et' Elle est constitue de l+ense"&le des procdures et des )onctions qui per"ettent / l+utilisateur de con)igurer et de "anipuler l+o&,et' Ainsi les donnes ne sont gnrale"ent pas accessi&les directe"ent "ais / travers les procdures et les )onctions de l+o&,et' 4elles>ci sont appeles : Mt/odes ou ,onctions Me+$res' 1.2.2 Dfinition dun contrle Un 4ontr.le est un O&,et d+inter)ace' Il est utilis gnrale"ent sur l+inter)ace d+une application graphique pour )ournir un certain ense"&le de )onctionnalits' Un contr.le est alors constitu d+un ense"&le de &roprits et de Mt/odes ?puisque c+est un O&,et@' En plus% il dispose d+un ense"&le de procdures particuli1res qu+on appelle des E#ne+ents' 4es 3 entits d+un contr.le sont d)inies co""e suit : 1- Les Proprits : 4haque contr.le dispose d+un ense"&le de proprits qui le caractrisent' -ar"i les proprits co""unes au( contr.les% on peut citer les suivantes : > 2a+e : le !o" du contr.le > 3op4 )e*t4 5idt/4 Hei./t : qui sont les proprits de position et de di"ension dont dispose tous les contr.les graphiques' > ,ont : qui per"et de prciser la police et autres caractristiques du te(te d+un contr.le ?Taille% gras% souligne"ent%5@' > %ac6olor : couleur de )ond du contr.le' 2- Les Mthodes : $* 4e sont des procdures qui per"ettent de con)igurer ou d+appliquer un traite"ent particulier / un contr.le' En e))et% certaines actions ne peuvent Etre o&tenues / l+aide des proprits "ais unique"ent par l+inter"diaire des "thodes' Les "thodes d+un o&,et sont accessi&les de la "E"e "ani1re que les proprits par l+inter"diaire du slecteur point H' I : - Les !"ne#ents : Un vne"ent est une procdure qui n+est pas appele e(plicite"ent par le progra""e ?ou le progra""eur@% "ais qui se dclenche auto"atique"ent en rponse / une action e(terne lors de l+e(cution de l+application' 4ette action peut Etre par e(e"ple% un clic8 sur un &outon de la souris% slection d+une option de "enu ou d+une liste% e(piration d+un te"porisateur% etc' !$e#ples : > lic6 : se dclenche lorsque l+utilisateur clique sur un contr.le de l+inter)ace' > 7e8&ress : se dclenche lorsque l+utilisateur tape sur une touche du clavier' > )oad : se dclenche lors du charge"ent d+une )euille' 1.3 Programmation Evnementielle Apr1s avoir con)igur l+inter)ace% le progra""eur doit associer le co"porte"ent adquat au contr.le adquat' 4ela consiste / rpondre / la question : 8ue vnement de %ue contr9e )aut>il progra""er J Ainsi% / chaque vne"ent / intercepter% il )aut dvelopper la procdure de traite"ent d+vne"ent associe' En e))et% pour un contr.le no"" ontrol% la procdure de traite"ent de son vne"ent no"" E#ent aura le no" ontrol9E#ent et la structure suivante : $: Private Sub Control_Event ( paramtres ventuels) End Sub On re"arque que la s0nta(e d+criture des procdures et )onctions est dveloppe dans le chapitre suivant' 1.4 Environnement de Dveloppement Visual Basic DoKte / Outils Darre d+Outils E(plorateur de pro,ets FenEtre -roprits FenEtre -rsentation des Feuilles FenEtre du -ro,et Feuille de l+application III. Les )enEtres principales: &a 3en4tre de mots de passe : $; Le code de coecter : -rivate u& 4o""and$C4lic8?@ pass'Lide "enu'hoM End u& &a 3en4tre daccuei : $< #ans cette )enEtre on choisi quelle tache on veut )aire &a 3en4tre de cient : 2= 4ette ta&le pour a,outer un client dans la liste de client ode A'outer : -rivate u& a,outerC4lic8?@ #i" con As A#O#D'4onnection et con N !eM A#O#D'4onnection con'-rovider N OMicroso)t'Pet'Oled&'6'=O con'4onnectiontring N Ovoiture'"d&O con'Open #i" 4"d As !eM A#O#D'4o""and I) ?!C4lientt'Te(t QR OO@ Then 4"d'4o""andTe(t N Oinsert into 4lient values?O S Aal?!C4lientt'Te(t@ S O% TO S !o"C4lientt'Te(t S OT%TO S -reno"C4lientt'Te(t S OT%TO S Adresst'Te(t S OT%TO S 4I!C4lientt'Te(t S OT%TO S TELt'Te(t S OT@O et 4"d'Active4onnection N con 4"d'E(ecute 2$ MsgDo( ?OInsertion &ien e))ectue UUUUUUUUUUUUUUO@ Else MsgDo( ?OErreur% 4ode introuva&le UUUUUUUUUO@ End I) a,outer4'Lide "enu'hoM End u& ode Reset : -rivate u& resetC4lic8?@ !C4lientt N OO !o"C4lientt N OO -reno"C4lientt N OO Adresst N OO 4I!C4lientt N OO TELt N OO End u& ode Retour : -rivate u& RetourC4lic8?@ a,outer4'Lide "enu'hoM End u& &a 3en4tre de contrat : 22 ode de a'outer : #i" con As A#O#D'4onnection et con N !eM A#O#D'4onnection con'-rovider N OMicroso)t'Pet'Oled&'6'=O con'4onnectiontring N Ovoiture'"d&O con'Open #i" 4"d As !eM A#O#D'4o""and I) ?a'Te(t QR OO@ Then 4"d'4o""andTe(t N Oinsert into 4ontrat values ? TO S a'Te(t S OT% TO S 4'Te(t S OT% TO S #'Te(t S OT%TO S A$'Te(t S OT%O S Aal?A2'Te(t@ S O@O et 4"d'Active4onnection N con 4"d'E(ecute 4"d'4o""andTe(t N Oinsert into a))ecter values ? TO S a'Te(t S OT% TO S D'Te(t S OT@O 23 et 4"d'Active4onnection N con 4"d'E(ecute MsgDo( ?OInsertion &ien e))ectue UUUUUUUUUUUUUUO@ Else MsgDo( ?OErreur% 4ode introuva&le UUUUUUUUUO@ End I) a,outerv'Lide "enu'hoM End u& ode rest: -rivate u& 4o""and2C4lic8?@ a'Te(t N OO A$'Te(t N OCCVCCVCCCCO A2'Te(t N OCCVCCVCCCCO D'Te(t N OO 4'Te(t N OO #'Te(t N OO End u& ode retour: -rivate u& 4o""and3C4lic8?@ "enu'hoM A,outerR'Lide End u& Conclusion : 26 La ralisation de cette application sTest rvl une e(prience &n)ique' Elle nous a per"is dTutiliser certaines connaissances acquises au niveau de la &ase de donnes qui reprsente et i"pl"ente la gestion de &i&lioth1que dans le pro,et de la gestion de la &i&lioth1que !ationale En e))et% ce travail nous a pousses / chercher pour &ien russir notre application' 27 2* 2: 2; 2< 3= 3$ 32