Vous êtes sur la page 1sur 5

www.developpez.c.

la

OFPPT

Office de la Formation Professionnelle


et de la Promotion du Travail
Direction Recherche et Ingnierie de Formation
Examen de passage, session juin 2006
Epreuve pratique
Filire : TSDI

Barme :40 Pts.

Niveau : TS

Dure : 4H.
Variante n4

Important :
Il sera pris en considration la convivialit des interfaces et la clart du code. La gestion des
erreurs et la robustesse de lapplication seront bien apprcies .
La totalit de votre travail doit tre enregistre dans un mme rpertoire pour faciliter la
sauvegarde par la suite. Pour cela, il faut crer sur votre bureau un dossier qui porte votre
nom & Prnom, et cest dans ce dernier que vous allez enregistrer vos ralisations par la
suite.

Dossier 1 : SQL server (15pts)


Voici le modle relationnel des donnes de la base de donnes AcciRoute pour reprsenter les
rapports daccidents de la route. Le type des attributs est fourni sur le modle. Les cls primaires sont
soulignes et les cls trangres sont crites en italique :
Personne (nas : int, nom : varchar(35), villeP : varchar(50) )
Voiture (imma : varchar(12), modele : varchar(20), annee : int, nas : int )
Accident (dateAc : date, nas : int, dommages : single, villeAc : varchar(50), imma : varchar(12) )
Notes :
a) Une personne est propritaire dune ou de plusieurs voitures
b) Une personne ne conduit quune seule voiture dont elle est propritaire
c) Il peut y avoir des homonymes (personnes ayant le mme nom) diffrencis par leur nas.

Page 1 / 5

www.developpez.c.la
Travail faire :
1) Crer la base de donnes SQL server. Les deux fichiers de la base doivent tre placs sur votre
dossier. (3pt)
2) Crer le diagramme de la base et saisir un jeu denregistrements dans chaque table (1pt)
3) Ajouter les utilisateurs suivants et accorder leur les permissions spcifies (1pt)
Login

Permissions

said

Propritaire de la base

laila

Lecture des champs nas et nom de la table Personne

mourad

Lecture de toutes les tables et modification de la table


Accident

4) Dvelopper les vues suivantes (10pts)


vue 1 Trouver le nombre total de propritaires de voitures impliques dans un accident de la route
entre le 1/1/2001 et le 31/12/2005.
vue 2 Trouver le nom et le nas des propritaires de voiture qui ont fait plus de deux accidents.
vue 3 Afficher les accidents ayant des dommages suprieurs 5000
vue 4 Trouver le total des dommages subis par les voitures qui appartiennent des conducteurs de
Tanger.
vue 5 Lister lanne de la voiture accidente la plus ancienne.
vue 6 Afficher les immatriculations de voiture qui contiennent la lettre B.
vue 7 Afficher pour chaque ville le nombre total daccidents enregistrs.
vue 8 Afficher les villes o il y a plus de 1000 accidents enregistrs dans la base.
vue 9 Afficher les noms des propritaires de voiture qui rsident dans une ville o il y a eu plus
de 1000 accidents.
vue 10 Afficher le nom des propritaires dune voiture accidente, qui rsident dans une ville o il
y a eu plus de 1000 accidents.
vue 11 Afficher le ratio du nombre daccidents par ville et cela par rapport au nombre total des
accidents. Pour rpondre cette question, vous pouvez crer une vue NbAc qui calcule le
nombre total daccidents.
vue 12 Lister le nom des personnes qui ont eu un ou plusieurs accidents dans la ville de
Marrakech.
vue 13 Afficher les accidents ayant des dommages compris entre 2000 et 5000.
vue 14 Afficher les dates des accidents dans lesquels sont impliqus le vhicule immatricul 1234A-24.
vue 15 Combien daccidents sont survenus le 24/5/2003 ?
vue 16 Quelle est la date du premier accident qui a fait lobjet dun enregistrement ?
vue 17 Compter le nombre daccidents survenus Casa le 1/1/2004.
vue 18 Afficher la date de laccident le plus rcent Casa impliquant un modle Fiat.
vue 19 Afficher pour chaque ville le nas et le nom des personnes impliques dans les accidents
survenus entre le 20/2/2005 et 28/2/2005.
Page 2 / 5

www.developpez.c.la
vue 20 afficher la liste des accidents classe par ordre dcroissant de leur date.

Dossier 2 : Dveloppement dapplication vnementielle (25pts)


Une cole de formation de la langue espagnole vous demande de dvelopper une application qui
permet de grer ses stagiaires ainsi que les rsultats quils ont obtenu au cours du cursus de formation
qui se dcoupe en 9 modules numrots de 1 a 9.
On souhaite enregistrer pour chaque stagiaire, le numro dinscription, le nom, le prnom, le sexe, la
date de naissance, le numro de module et la note obtenue ce module.
Toutes ces informations seront enregistres en mmoire, vous de choisir les structures de donnes
qui conviennent leur stockage. Lapplication que vous allez crer permettra la saisie des donnes et
ldition dun certain nombre de rsultats. Prvoir la gestion des exceptions.
1) Lapplication doit comprendre la feuille MDI suivante : (3pts)

2) Pour ajouter un nouveau stagiaire, on utilise loption Ajouter du menu Stagiaires. La fentre
ci-dessous doit apparatre pour permettre la saisie des informations. Un click sur le bouton OK
permettra de valider les donnes et de fermer cette fentre. Le bouton Annuler permet
dabandonner lopration. La note doit tre comprise entre 0 et 20. (4pts)

Page 3 / 5

www.developpez.c.la

3) Dvelopper une fonction de recherche qui reoit le numro dinscription dun stagiaire et
renvoie sa position dans la liste. La fonction doit renvoyer la valeur -1 quand le numro
recherch nest pas trouv. (2pts)
Function recherche_stagiaire( num_ins as integer) as integer
4) Pour supprimer un stagiaire, on utilise loption Supprimer du menu Stagiaire. La fentre ciaprs apparat. Elle permet de saisir le numro dinscription du stagiaire supprimer. Quand il
existe vous devez afficher un message de confirmation de la suppression avec la question
Voulez-vous vraiment supprimer ce stagiaire ? . Si lutilisateur rpond par oui on procde
la suppression, sinon lopration est annule. Si le numro dinscription nest pas trouv,
lapplication affiche un message derreur. (4pts)

OU
5) La consultation des informations dun stagiaire peut se faire avec loption Consulter du menu
Stagiaire. Pour ce faire, lutilisateur doit commencer par saisir un numro dinscription,
lapplication rpond soit par un message derreur lorsque le numro est inexistant, soit par
afficher les donnes du stagiaire recherch. (4pts)
Page 4 / 5

www.developpez.c.la

6) On peut consulter la liste des stagiaires en utilisant loption Liste des Stagiaires du menu
Edition. Utiliser une zone de liste pour afficher les donnes. (4pts)

7) Liste des stagiaires par module : Lutilisateur saisit le numro dun module (entre 1 et 9) et
lapplication affiche l liste des stagiaires correspondants. (4pts)

Page 5 / 5