Correction de l'Examen de Passage - Théorie 2013 - TDI
Dossier 1 (13pts) 1. Il s’agit de vérifier les connaissances générales du stagiaire dans le domaine de l’informatique. Le correcteur saura apprécier la pertinence des réponses. (2pts) 2.
a. Représenter la fonction F sur une table de vérité. (1 ,5pt)
b. Simplifier graphiquement la fonction F. (1,5pt)
Réunir les éléments de la première colonne et de la dernière colonne : ¯B. Puis réunir les éléments de la première ligne et de la dernière ligne :
3. Au parlement, il y a 300 représentants qui tentent de voter une loi. Un vote peut se traduire par l’un des trois cas suivants : Oui, Non et Abstention. Abstention signifie refus de participer au vote. a. Nombre de résultats coïncide avec le nombre d’applications d’un ensemble ayant 300 éléments (les votants) vers un ensemble de 3 éléments (Oui, Non, Abstention) puisque chaque votant choisira une de ces trois options. Donc le nombre de résultats est égal à 3300. (2pts) b. D’abord on va compter le nombre de cas favorables. Chaque fois que nous fixons un groupe de 120 représentants parmi les 300 votants qui vont choisir l’option « Oui », nous devrons choisir 120 autres représentants parmi les 180 (=300-120) restants qui vont choisir l’option « Non ». Nous avons donc fixé 240 (=120+120) représentants et donc il nous reste à choisir 60 représentants parmi les 60 (=300-240) restants qui vont « s’abstenir ».
Tous les cas sont équiprobables. Donc, la probabilité est égale au résultat de la division du nombre des cas favorables par le nombre des cas possibles. Donc le résultat cherché est : (2pts)
4. Convertir en octal et en décimal les nombres suivants : il est plus simple de passer de la base 16 à la base 2 et puis de cette dernière vers la base 8 : a. (1001,1)16 = (1 0000 0000 0001,0001 0000)2 = (001 000 000 000 001,000 100)2 = (10001,04)8. (2pt)
(1001,1)16 = (1 * 163 + 1 * 160 + 1 * 16-1)10 = (4097,0625)10 b. (1000)16 = (10000)8 : il suffit de soustraire un du résultat précédent. (2pts)
(0,01)16 = (0,0000 0001)2 = (0,000 000 010)2 = (0,002)8
Donc (1000,01)16 = (10000,002)8
De même, (1000)16 = (4096)10
(0,01)16 = 1 * 16-2 = (0,00390625)10
(1000,01)16 = (4096, 00390625)10
Rappel : le stagiaire doit fournir plus de détails au niveau des calculs. Attribuez la note Zéro (0) si un résultat est fourni directement sans détails.
Dossier 2 (12pts)
Soon...
Dossier 3 (6pts) a. MCD
b. MLD
Dossier 4 (9pts)
La solution proposée plus bas, vise surtout à montrer le caractère « récursif » de la méthode ToString.
class Personne
{
public string Nom, Prenom;
public Personne Père, Mère;
public Personne(string Nom, string Prenom) {
this.Nom = Nom;
this.Prenom = Prenom;
// Les deux instructions ci-dessous ne sont pas vraiment nécessaires :
Pere = null;
Mere = null;
}
public Personne(string Nom, string Prénom, Personne P, Personne M) {
this.Nom = Nom;
this.Prenom = Prenom;
Pere = P;
Mere = M;
}
public string NomComplet() { return Nom + "\t" + Prenom; }
public override string ToString() {
if (Pere != null)
return Pere.ToString() + Environment.NewLine + Pere.NomComplet();
elsereturn "";
}
public void affiche() {
string ch=ToString();
Console.WriteLine("Cette personne se nomme : " + NomComplet());
if(ch!="") Console.WriteLine("Liste des ancêtres à partir du plus ancien :" + Environment.NewLine + "Nom\tPrénom" + ch);
}
}
Télécharger la correction de l'examen de passage - Théorie 2013 :
Soon ...
Dossier 1 : (26pts) La société DRAHMI-Xpress veut développer un système de transfert d’argent, après l’analyse et la conception, les concepteurs proposant une solution avec un système d’alerte se basant sur l’envoie d’une notification «message vocal» au receveur d’argent pour l’accélération de cette opération. Cette option est un service facultatif payant. Le barème de payement des messages vocaux dépend des pays de destination, aussi ils ont proposé un espace d’échange d’information et réclamation. Voir la structure de base de données dans la page N° 2. Travail à faire : Enregistrer sur un fichier texte qui porte le nom «dossier1NuméroVariante.txt» ou «dossier1NuméroVariante.sql» les requêtes SQL qui répondent aux questions suivantes. 1) Créer la base de données BD_DRAHMI_Express. (4pts) 2) Ajouter les contraintes : (3pts) • Table EspaceClient, le TypeMSG accepte seulement l’une des valeurs (Question, Avis, Problème). • Table client : la colonne GSM n’accepte que les valeurs commençant par 06 3) Ajouter un jeu d’essai dans chaque table. Dans la table Compte on ajoute un compte d’agence dont les informations sont : (Ncompte=code d’agence, codeAgence=code d’agence, CIN=CIN de responsable, DateOuv= date de création de cette agence, Montant = 100000 DH). (4pts) 4) Créer une procédure stockée qui affiche l’historique des comptes (Ncompte, DateTransfer, Montant total transféré(*)) d’un client donné en paramètre. (4pts) (*) =MONTANTTRANSFER + FRAISTRANSFER + AUTRESFRAIS. 5) Créer une fonction qui retourne le chiffre d’affaires transféré par une agence donnée. (3pts) 6) Créer une fonction qui retourne les 5 actifs clients(*). (4pts) (*) : Client ayant plus de commentaires dans l’espace client. 7) Créer un trigger, qui lors de l’ajout d’une opération à la table TRANSFER ; si le client a un compte dont le montant est supérieur au montant qu’il souhaite transférer, le trigger exécute opération suivante : (4pts) Montant (compte client) = Montant (compte client) – Montant objet du transfert. Sinon : Montant (compte agence) = montant (compte agence) - Montant objet du transfert.
Dossier 2 : (28pts) L’objectif est de créer une application « client/serveur » qui utilise la base de données du dossier 1 dont les fonctionnalités sont les suivantes : 1. Créer un formulaire de mise à jour des notifications des messages vocaux avec les commandes suivantes : (5pts) • Les boutons Adapter (=Modifier si le code de transfert (ID NOTIFICATION) existe déjà, sinon= Ajouter) et Supprimer; • Des boutons de navigation. Le code barème et code de transfert est choisi à partir d’une liste déroulante et lors d’un choix le pays et le prix s’affiche automatiquement. 2. Créer un formulaire de recherche multicritères contenant une grille et trois listes déroulantes (CIN client, code transfert, DateEnvo) qui affichent la liste des notifications (tous les champs) selon un critère de recherche. (4pts) • La liste déroulante CIN client est chargée par les CIN des clients (table client) ; • La liste déroulante code transfert est chargée par les CODETRANSFER (table TRANSFER) • La liste déroulante date d’envoi est chargée par les DATEENVO (table NOTIFICATIONMSGVOCAL). 3. Créer un formulaire permettant d’afficher la liste des commentaires (tous les champs) publiés par les clients dans une grille, ajouter une case à cocher pour valider ou rejeter un commentaire. Si la case est cochée, la colonne VALIDER de la table ESPACECLIENT, doit prendre la valeur « oui ». (4pts) 4. Créer un formulaire permettant d’afficher le chiffreTransféré et le chiffreréceptionné par une agence donnée de la journée courante sachant que la liste des agences déjà remplie dans une liste déroulante. (4pts) 5. Les responsables de DRAHMI-Xpress fixent une stratégie pour la consultation des mouvements des capitaux des agences de recevoir un fichier qui contient les chiffres réalisés chaque jour (Transféré et réceptionné) pour chaque agence, pour cela : Ajouter au formulaire (question 4), un bouton exporter les chiffres qui permet d’exporter les données énoncées dans un fichier sous format (.XML, .txt ou même les formats Excel). (4pts) 6. Créer un état qui imprime les notifications d’une agence choisie à partir d’une liste déroulante, représenté comme suit : (5pts) Les notifications vocales Agence :{NomAgenceAdresseAgence}
(*) : Prix colonne de la table barème (**) : La somme des prix 7. Créer un état graphique représentant le chiffre total transféré par agence. (2pts) Dossier 3 : (26pts) DRAHMI-Xpress souhaite développer un site web dynamique permettant aux clients un espace d’échange des avis et de postuler des problèmes et des questions aux responsables, la base de données reste la même. 1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans ce qui suit. (1pt) 2. Créer une page web qui permet aux utilisateurs de se connecter. (3pts)
(Nom d’utilisateur= compte de la table client) 3. Créer une page web de mise à jour des commentaires dont les commandes sont : a) Le CIN de client est récupéré automatiquementà partir de la connexion. (1pt) b) Charger une liste déroulante pour le choix d’un type de message (Question, Avis, Problème). (1pt) c) Des boutons permettant d’ajouter et de supprimer des commentaires. (2pts) d) La date et l’heure est égale à la date et l’heure courante. (1pt) e) Ajouter des validateurs pour que les champs de saisi ne doivent pas être vides. (2pts) Pour exécuter une commande le client doit se connecter tout d’abord. 4. Créer une page web pour afficher les 50 actuels commentaires postulés par ce client. (3pts) 5. Créer une page web pour la recherche des commentaires selon les critères date, type de message ou même par le nom de client. (4pts)
6. Ajouter un bouton exporter pour que chaque client (le client authentifier) peut grader une copie de son commentaire sous format d’un fichier. (4pts) 7. DRAHMI-Xpress veut ajouter un simulateur des frais de transfert, la commission d’étude a fixé le barème suivant : (4pts)
- Réaliser la page web suivante :
Examen Fin Formation 2013 TDI - Épreuve Pratique
Variante 8
Dossier 1 : (26pts) La société Exchange-Xpress veut développer un système de transfert d’argent, après l’analyse et la conception les concepteurs proposant de plus un système d’alerte se basant sur l’envoie d’une notification SMS au receveur d’argent pour l’accélération de cette opération et aussi un espace pour les clients pour la consultation des mouvements de leurs comptes. Voir la structure de base de données dans la page N° 2. Travail à faire : Enregistrer sur un fichier texte qui porte le nom « dossier1NuméroVariante.txt » ou « dossier1NuméroVariante.sql »les requêtes SQL qui répondent aux questions suivantes. 1) Créer la base de données Exchange-Xpress. (4pts) 2) Ajouter les contraintes et les colonnes: • Table Mouvement, le TYPEMOUVEMENT accepte seulement l’une des valeurs (Entrée, Sortie). (1pt) • Ajouter la colonne « OperateurTelCom » dans la table NOTIFICATIONSMS avec la contrainte suivante : colonne accepte seulement l’une des valeurs (Maroc Telcom, Méditel, Wana, Inwi). (1pt) • Ajouter une colonne valide dans la table mouvement, sachant que les valeurs permises sont « oui » ou « non » (1pt) 3) Ajouter un jeu d’essai dans chaque table. Dans la table Compte on ajoute un compte d’agence dont les informations sont : (Ncompte=code d’agence, codeAgence=code d’agence, CIN=CIN de responsable, DateOuv= date de création de cette agence, Montant = 100000 DH). (4pts) 4) Créer une procédure stockée qui affiche les mouvements des comptes (Ncompte, Somme des entrées, Somme des sorties, balance(*)) d’un client donné en paramètre. (4pts) (*) =Somme des entrées - Somme des sorties. 5) Créer une fonction qui retourne la balance d’un compte donné. (3pts) 6) Créer une fonction qui retourne les 5 actifs clients(*). (4pts) (*) : Client ayant le maximum de mouvement dans leurs comptes. 7) Créer un trigger, qui lors de l’ajout d’une opération à la table TRANSFER ; si le client a au moins un compte dont le montant est supérieur au montant qu’il souhaite transférer et si le nombre de mouvement dans cette date est inférieure à 3, le trigger exécute l’opération suivant : (4pts) Montant (compte client) = Montant (compte client) – Montant objet du transfert. Sinon : Montant (compte agence) = montant (compte agence) - Montant objet du transfert.
Dossier 2 : (28pts) L’objectif est de créer une application « client/serveur » qu’utilise la base de données du dossier 1 dont les fonctionnalités sont les suivantes : 1. Créer un formulaire de mise à jour des notifications des messages SMS avec les commandes suivantes : (5pts) • Les boutons Adapter(=Modifier si le code de transfert (ID Notification) existe déjà, sinon= Ajouter) et Supprimer; • Des boutons de navigation. Le code transfert est choisià partir d’une liste déroulante et lors d’un choix d’un code le nom_prenomRecp et le CINRECEP s’affiche automatiquement. 2. Créer un formulaire de recherche multicritères contenant une grille et trois listes déroulantes (CIN client (émetteur), GSM Récepteur, Nom Récepteur) qui affichent la liste des notifications (tous les champs) selon un critère de recherche. (4pts) a. La liste déroulante CIN client est chargée par les CIN des clients (table client) ; b. La liste déroulante GSM récepteur est chargée par les GSM (table NOTIFICATIONSMS) c. La liste déroulante nom récepteur est chargée par les Nom des récepteurs (table NOTIFICATIONSMS) 3. Créer un formulaire permettant d’afficher la liste des mouvements par compte donné dans une grille, ajouter une case à cocher pour valider ou rejeter un mouvement. Si la case est cochée la colonne VALIDER de la table MOUVEMENT doit prendre la valeur «oui». (4pts) 4. Créer un formulaire permettant d’afficher le chiffre total transféré et le chiffre total réceptionné par une agence donnée de la journée courante sachant que la liste des agences déjà remplie dans une liste déroulante. (4pts) 5. Les responsables de Exchange-Xpress fixent une stratégie pour la consultation des mouvements des comptes clients pour cela chaque agence doit générer un fichier qui contient ses mouvements pour une date entrée. Ajouter au formulaire (question 4), un bouton générer qui permet d’exporter les données énoncées dans un fichier sous format (.XML, .txt ou même les formats Excel). (4pts) 6. Créer un état qui imprime les mouvements d’une agence choisie à partir d’une liste déroulante, représenté comme suit : (5pts)
(*) : Somme des montants si le type de mouvement égal entrée (**) : Somme des montants si le type de mouvement égal sortie 7. Créer un état graphique sous forme d’une courbe représentant le mouvement dans le temps d’un compte donné. (2pts) Dossier 3 : (26pts) Exchange-Xpress souhaite développer un site web dynamique permettant aux clients un espace d’échange des avis et de postuler des problèmes et des questions aux responsables, la base de données reste la même. 1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans ce qui suit. (1pt) 2. Créer une page web qui permetaux utilisateurs de se connecter. (3pts)
(Nom d’utilisateur = compte de la table client) 3. Créer une page web de mise à jour des mouvements dont les commandes sont : a) Charger une liste déroulante pour le choix d’un compte. (1pt) b) Charger une liste déroulante pour le choix d’un type de mouvement (Entrée, Sortie). (1pt) c) Des boutons permettant d’ajouter et de supprimer des mouvements. (2pts) d) La date et l’heure est égale à la date et l’heure courante. (1pt) e) Ajouter des validateurs pour que les champs de saisi ne doivent pas être vides. (2pts) 4. Créer une page web pour qu’un client puisse consulter les mouvements de ces comptes. (3pts) - Choix d’un compte à partir d’une liste déroulante. - Pour exécuter une commande le client doit se connecter tout d’abord. 5. Créer une page web pour la recherche des mouvements selon les critères date, type de mouvement ou même par le CIN client. (4pts)
6. Ajouter un bouton exporter pour que le client connecté peut grader une copie des mouvements de son compte sous format d’un fichier. (4pts) 7. Exchange-Xpress veut ajouter un simulateur des frais de transfert, la commission d’étude a fixé le barème suivant : (4pts)
Et pour calculer le frais de notification, la tarification des SMS dépend des opérateurs TELCOM selon le tableau :
(*) Remarque : les tarifs ne représente pas la vraie tarification mais juste une simulation. - Réaliser la page web suivante :
Examen Fin Formation 2013 TDI - Épreuve Pratique
Variante 9
Dossier 1 : (26pts) La société Money-Xpress veut développer un système de transfert d’argent, après l’analyse et la conception les concepteurs proposant un système d’alerte se basant sur l’envoie d’une notification Email au receveur d’argent pour l’accélération de cette opération et aussi un espace pour les clients abonnés pour la consultation de leurs journal des problèmes de transfert. Voir la structure de base de données dans la page N° 2. Travail à faire : Enregistrer sur un fichier texte qui porte le nom « dossier1NuméroVariante.txt » ou « dossier1NuméroVariante.sql » les requêtes SQL qui répondent aux questions suivantes. Donner les requêtes qui permettent de : 1) Créer la base de données BD_MoneyXpress. (4pts) 2) Ajouter les contraintes : (3pts) a. Table PROBLEMETRANSFERT, le TypePROB accepte seulement l’une des valeurs (problème code de transfert, Problème de Notification). b. Table client : la colonne Email n’accepte que les valeurs terminant par (@moneyxpress.com) 3) Ajouter un jeu d’essai dans chaque table. Dans la table Compte on ajoute un compte d’agence dont les informations sont : (Ncompte=code d’agence, codeAgence=code d’agence, CIN=CIN de responsable, DateOuv= date de création de cette agence, Montant = 100000 DH). (4pts) 4) Créer une procédure stockée qui affiche (CIN client, capital client(*)/ capital agence (**) ) d’un client donné en paramètre. (4pts). (*) =la somme des montants clients. (**)=Montant de cette agence. 5) Créer une fonction qui retourne le chiffre d’affaire transféré par un client donné à partir d’une agence donnée. (3pts) 6) Créer une fonction qui retourne les 5 malchanceux clients (*). (4pts) (*) : Client ayant le nombre maximum des problèmes de transfert. 7) Créer un trigger, qui lors de l’ajout d’une opération à la table TRANSFER; si le client a un compte dont le montant est supérieur au montant souhaite transférer, le trigger exécute l’opération: (4pts) Montant client=Montant client– Montant objet du transfert + Remise. Remise = 0,5% du montant (montant à transférer) si le client déjà transfert un montant>500000. Remise = 0,3% du montant (montant à transférer) si le client déjà transfert un montant entre 300000 et 500000.
Dossier 2 : (28 pts) L’objectif est de créer une application « client/serveur » qui utilise la base de données du dossier 1 dont les fonctionnalités suivantes : 1. Créer un formulaire de mise à jour des notifications des messages Email avec les commandes suivantes : (5pts) • Les boutons Adapter(=Modifier si le code de transfert (id notification) existe déjà, sinon= Ajouter) et Supprimer; • Des boutons de navigation. Le code transfert est choisià partir d’une liste déroulante et lors d’un choix le Nom et prénom de client (émetteur) s’affichent automatiquement. 2. Créer un formulaire de recherche multicritères contenant une grille et trois listes déroulantes (Code Agence, CIN client, DateEnvo) qui affichent la liste des notifications (tous les champs) selon un critère de recherche. (5pts) • La liste déroulante CIN client est chargée par les CIN des clients (table client) ; • La liste déroulante Code Agence est chargée par les Codes Agence (table Agence) ; • La liste déroulante date d’envoie est chargée par les DATEENVO (table NOTIFICATIONEMAIL). 3. Créer un formulaire permettant d’afficher la liste des problèmes publiés par les clients dans une grille, ajouter une case à cocher pour valider ou rejeter un commentaire. Si la case est cochée la colonne VALIDER de la table PROBLEMETRANSFER doit prendre la valeur « oui ». (3pts) 4. Créer un formulaire permettant d’affiche le CIN client, le chiffre en objet de déclaration non envoyé (Problème code de transfert) par une agence donnée durant la journée courante sachant que la liste des codes des agences est déjà remplie dans une liste déroulante. (3pts) 5. Les responsables de Money-Xpress fixent une stratégie pour la consultation les problèmes rencontré par les clients lors du transfert d’argent, ils ont demandé à chaque agences d’envoyé un fichier qui contient les problèmes déclaré par ces clients, Ajouter au formulaire (question 4), un bouton « Exporter » qui permet d’exporter les données énoncées dans un fichier sous format de (.XML, .txt ou même les formats Excel). (4pts) 6. Créer un état qui imprime les problèmes d’une agence choisie à partir d’une liste déroulante, représenté comme suit : (5pts) Liste des problèmes Agence :{NomAgence AdresseAgence}
(*) : Montant de l’opération (MontantTransfert colonne de la table TRANSFER) (**) : La somme des « MontantTransfert » 7. Créer un état graphique représentant le chiffre (total) non envoyé (problème code de transfert) par chaque agence. (3pts) Dossier 3 : (26 pts) Money-Xpress souhaite développer un site web dynamique permettant aux clients un espace d’échange des avis et de postuler des problèmes et des questions aux responsables, la base de données reste la même. 1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans ce qui suit. (1pt) 2. Créer une page web qui permetaux utilisateurs de se connecter. (2pts)
(Nom d’utilisateur = compte colonne de la table client) 3. Créer une page web de mise à jour des problèmes dont les commandes sont : a) Le CIN de client est récupéré automatiquement à partir de la connexion. (2pts) b) Charger une liste déroulante pour le choix d’un type de problème (problème code de transfert, Problème de Notification). (2pts) c) Des boutons permettant d’ajouter et de supprimer des lignes dans la table problemeTransfer. (2pts) d) Ajouter des validateurs pour que les champs de saisi ne doivent pas être vides. (2pts) Pour exécuter une commande le client doit se connecter tout d’abord. 4. Créer une page web pour afficher les 5 actuels problèmes postulés par ce client. (3pts) 5. Créer une page web pour la recherche des problèmes selon les critères date, type de problème ou même par le nom de client. (4pts)
6. Ajouter un bouton exporter pour que chaque client peut grader une copie de ces problèmes sous format d’un fichier. (4pts) 7. Money-Xpress veut ajouter un simulateur des frais de transfert, la commission d’étude a fixé le barème suivant : (4pts)
- Réaliser le simulateur en question.
Télécharger Les Examens Fin Formation 2013 TDI - Épreuve Pratique - Les Variantes (7, 8, 9) :
Examens de Fin Formation 2013 Pratique - Jour 2 - Variantes (4, 5, 6)
Variante 4
Dossier 1 : (24pts) La société FS Jobs veut développer un nouveau système de messagerie pour mieux organiser l’échange des informations avec d’autres personnes utilisant, l’Internet et des systèmes de messagerie différents. Ainsi, les utilisateurs peuvent échanger des documents, des feuilles de calcul, des graphiques et divers autres éléments dans des messages électroniques, consulter les éléments disponibles dans les dossiers publics ou publier des éléments dans des dossiers publics afin que d’autres utilisateurs puissent y accéder. Le schéma relationnel de la base de données : N.B : Les champs marqués en gras et soulignés représentent les clés primaires des tables et les champs marqués par # représentent les clés étrangères. Table_Compte (Compte, Nom, Prenom, MotPasse, DateCreation,Tailleintialle, Tailledisponible, QuestionSecurite, ReponseSecurite, Etatcompte) Table_Courrier (NCourrier, DateArriv, CompteExpéditeur#, Sujet, contenu, EtatCourrier, TypeCourrier#) Table_TypeCourrier (CodeType, LibTypeCourrier) Table_FichierAttache (code_Fichier, Lib_Fichier, Format, Taille, NCourrier#) Table_BoiteReception (CompteRecepteur#, NCourrier#, DateReception, EtatRecp) Table_Archive (CodeArchive, NomArchive, NCourrier#, Compte#, DateArchive, TailleArchivage, TypeArchivage) Descriptions, Détails et contraintes des colonnes de la base en énoncé.
Travail à faire : Enregistrer sur un fichier texte qui porte le nom « dossier1NuméroVariante.txt » ou « dossier1NuméroVariante.sql »les requêtes SQL qui répondent aux questions suivantes. 1) Créer en respectant les contraintes, la base de données BDExamen puis ajouter un jeu d’essai dans chaque table. (4pts) 2) Créer une procédure stockée qui affiche les courriers en archive (tous les champs) d’un utilisateur dont le nom et le prénom en paramètres. (2pts) 3) Créer une procédure stockée qui affiche les comptes des expéditeurs (tous les champs) envoyant des fichiers en format MS Word en tant que fichier attaché (une obligation d’utiliser un curseur pour parcourir la table courrier dans cette question. (3pts) 4) Créer une fonction qui retourne la taille (totale) d’archive utilisé par un utilisateur dont le compte (récepteur) est donné en paramètre. (3pts) 5) Créer une fonction qui retourne les informations (N° compte, Nombre de messages courrier envoyés, Nombre de messages courrier réceptionnés). (4pts) 6) Créer un trigger qui empêche l’ajout d’une ligne dans la table archive si la valeur de la colonne EtatCourrier est « non » ou si la taille totale des fichiers attachés est supérieure à la taille disponible du compte récepteur. (4pts) 7) Créer un trigger qui lors de l’insertion d’une ligne dans la table courrier et si la taille totale des fichiers attachés est supérieure à la taille disponible de ce compte récepteur, ce courrier sera stocké automatiquement dans le compte administrateur dont les infos (compte= it@fsjobs.com, DateArriv= date d’aujourd’hui) (4pts) Dossier 2 : (30pts) FS Jobs souhaite développer une application « client/serveur » qui utilise la base de données du dossier 1 dont les fonctionnalités sont les suivantes : 1. Créer un formulaire de connexion pour se connecter au système de messagerie. (3pts) a. Créer la classe Archive (les deux constructeurs par défaut et d’initialisation, les propriétés) (2pts) 2. Ajouter les méthodes suivantes à la classe Archive : a. AjouterArchive () : permet d’ajouter l’objet concerné dans la table archive. (1pt) b. SupprimerArchive () : permet de supprimer l’objet concerné de la table archive (1pt) c. ModifierArchive () : permet de modifier l’objet concerné de la table archive (1pt) 3. Créer un formulaire de mise à jour des archives avec les commandes suivantes : a. Les boutons Ajouter, Modifier et supprimer, utiliser les méthodes de la classe Archive (3pts) b. Des boutons de navigation. (2pts) c. Le numéro de courrier et le numéro de compte sont choisis à partir deux listes déroulantes et lors d’un choix d’un compte les infos (Nom, Prenom) de ce compte s’affichent automatiquement. (1pt) Créer un formulaire, pour la validation des comptes email, contenant une grille, ajouter une case à cocher qui correspond à Etatcompte pour « valider » ou « rejeter » un compte à côte de chaque ligne. Si l’administrateur valide un compte, un message de bienvenue sera introduit automatiquement dans la table courrier dont les infos sont : (5pts)
4. Créer un formulaire de filtrage et de recherche contenant une grille, une zone de saisie (Compte) et une liste déroulante (Type Archive) qui affichent la liste des courriers archivés selon un critère de recherche ou de filtrage. • Filtrage automatique sur la partie de mot saisi dans la zone compte, le programme laisse seulement les courriers dont le compte contient la partie de mot dans la zone de saisi. (4pts) 5. Créer un formulaire permettant d’afficher la taille des messages archivés pour un compte et une année en paramètre. (2pts) 6. Créer un état qui imprime l’archive d’un compte donné, puis ajouter un graphique sous forme d’une courbe qui représente le la taille en octets des messages archivés pour l’ensemble des comptes. (5pts) Dossier 3 : (26pts) FS Jobs souhaite développer un site web dynamique permettant une utilisation simple et facile de cette solution Web. La base de données reste la même. 1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans ce qui suit. (1pt) 2. Créer une page web qui permet aux utilisateurs de se connecter.
a. Le lien « j’ai oublié mon mot de passe » permet aux utilisateurs de changer leur mot de passe, le clic sur ce lien affiche la page web suivante: (2pts)
b. Programmer cette page, le bouton « OK » permet de vérifier la réponse proposée (réponse sécurité) (2pts) - Dans le cas d’une réponse correcte la page web suivante s’affiche :
c. Programmer cette page, le bouton « Valider » permet de modifier le mot de passe. (2pts) 3. Créer une page web pour la mise à jour des archives dont les commandes sont : a) Le compte utilisateur doit être récupéré automatiquement à partir de la connexion. (1pt) b) un bouton« ajouter archive ». (2pts) c) Un bouton « supprimer archive », mais avant la suppression l’utilisateur doit confirmer un code généré aléatoirement : (4pts)
d) Des boutons de navigation (3pts) Pour exécuter une commande le client doit se connecter tout d’abord. 4. Créer une page web pour afficher les archives d’un utilisateur donné et aussi la taille disponible de son compte(*). (3pts) (*)= 10 Go – la somme des tailles (fichier attaché) – la somme (taille archivage) 5. Créer un fichier XSLT pour le fichier archive.xml (Dossier II). (2pts) 6. Créer un DTD pour la validation du fichier archive.xml (2pts) 7. Ajouter un bouton qui permet d’afficher le fichier archive.xml. (2pts)
Examens de Fin Formation 2013 Pratique - Jour 2 - Variantes (4, 5, 6)
Variante 5
Dossier 1 : (24pts) La Société SOFT ROW veut développer un nouveau système de messagerie pour mieux organiser l’échange des informations avec d’autres personnes utilisant Internet et des systèmes de messagerie différents. Ainsi, les utilisateurs peuvent échanger des documents, des feuilles de calcul, des graphiques et divers autres éléments dans des messages électroniques, consulter les éléments disponibles dans les dossiers publics ou publier des éléments dans des dossiers publics afin que d’autres utilisateurs puissent y accéder. Les utilisateurs de système réclament aux administrateurs qu’il y a un nombre de messages non souhaités (publicité,…) arrive à leurs boites de réception, après l’étude de ce problème, ils ont décidé d’améliorer la sécurité de cette application. Le schéma relationnel de la base de données : N.B : Les champs marqués en gras et soulignés représentent les clés primaires des tables et les champs marqués par # représentent les clés étrangères. Table_Compte (Compte, Nom, prenom, MotPasse, DateCreation, Tailleintialle, Tailledisponible, QuestionSecurite, ReponseSecurite, Etatcompte) Table_Courrier (NCourrier, DateArriv, CompteExpéditeur#, Sujet, contenu, EtatCourrier, TypeCourrier#) Table_TypeCourrier (CodeType, LibTypeCourrier) Table_FichierAttache (code_Fichier, Lib_Fichier, Format, Taille, NCourrier#) Table_BoiteReception (CompteRecepteur#, NCourrier#, DateReception, EtatRecp) Table_SPAM (CodeSPAM, NomSPAM, NCourrier#, Compte#, DateTraitement, TailleSPAM, TypeSPAM, EtatSPAM) Descriptions, Détails et contraintes des colonnes de la base en énoncé.
Travail à faire : Enregistrer sur un fichier texte qui porte le nom « dossier1NuméroVariante.txt » ou « dossier1NuméroVariante.sql » les requêtes SQL qui répondent aux questions suivantes. 1) Créer en respectant les contraintes, la base de données BDExamen puis ajouter un jeu d’essai dans chaque table. (4pts) 2) Ajouter un jeu d’essai dans chaque table. (2pts) 3) Créer une procédure stockée qui affiche les comptes des expéditeurs (tous les champs) envoyant des fichiers de format PDF en tant que fichier attaché (une obligation d’utiliser un curseur pour parcourir la table courrier dans cette question) (3pts) 4) Créer une fonction qui retourne la taille totale des SPAM d’un compte récepteur donné en paramètre. (3pts) 5) Créer une fonction qui retourne les informations (N° compte, Nombre de messages courrier réceptionnés, Nombre de messages courrier SPAM). (4pts) 6) Créer un trigger qui empêche l’ajout d’une ligne dans la table SPAM si la valeur de la colonne EtatCourrier est « non » ou si la taille totale des fichiers attachés est supérieure à 10% de la taille disponible du compte récepteur. (4pts) 7) Créer un trigger lors de l’insertion d’une ligne dans la table courrier et si la taille totale des fichiers attachés est supérieure à la taille disponible de ce compte récepteur, ce courrier sera stocké automatiquement dans le compte administrateur dont les infos sont (compte= it@fsjobs.com, DateArriv= date d’aujourd’hui) (4pts) Dossier 2 : (30pts) SOFT ROW souhaite développer une application « client/serveur » qui utilise la base de données du dossier 1 dont les fonctionnalités sont les suivantes : 1. Créer un formulaire de connexion pour se connecter au système de messagerie (3pts) 2. Créer la classe SPAM (les deux constructeurs par défaut et d’initialisation, les propriétés). (2pts) 3. Ajouter les méthodes suivantes à la classe SPAM : a. AjouterSPAM () : permet d’ajouter l’objet concerné dans la table SPAM. (1pt) b. SupprimerSPAM () : permet de supprimer le SPAM concerné. (1pt) c. ModifierSPAM () : permet de modifier le SPAM concerné (1pt) 4. Créer un formulaire de mise à jour des SPAM avec les commandes suivantes : a. Les boutons Ajouter, Modifier et supprimer, utiliser les méthodes de la classe Spam. (3pts) b. Des boutons de navigation. (2pts) c. Le numéro de courrier et le numéro de compte sont choisis à partir deux listes déroulantes et lors d’un choix d’un compte les infos (Nom, Prenom) de ce compte s’affichent automatiquement. (1pt) 5. Créer un formulaire, pour la validation des SPAM, contenant une grille, ajouter une case à cocher qui correspond à EtatSPAM pour valider ou rejeter un SPAM à côté de chaque ligne. Si le validateur valide un SPAM, un message sera introduit automatiquement dans la table boite de réception dont les infos sont : (5pts)
6. Créer un formulaire de filtrage et de recherche contenant une grille, une zone de saisie (Compte) et une liste déroulante (Type SPAM) qui affichent la liste des SPAM archivés selon un critère de recherche ou de filtrage. Filtrage automatique sur la partie du mot saisi dans la zone compte, le programme laisse seulement les courriers dont le compte contient la partie du mot dans la zone de saisi. (4pts) 7. Créer un formulaire permettant d’afficher la taille des messages SPAM pour un compte et une année en paramètres. (2pts) 8. Créer un état qui imprime la liste des SPAM arrivée à un compte donné, puis ajouter une graphique se forme d’une courbe qui représente la taille en octets des SPAM arrivés pour l’ensemble utilisateur. (5pts) Dossier 3 : (26pts) SOFT ROW souhaite développer un site web dynamique permettant une utilisation simple et facile de cette solution Web. La base de données reste la même. 1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans ce qui suit. (1pt) 2. Créer une page web qui permetaux utilisateurs de se connecter.
a. Le lien « j’ai oublié mon mot de passe » donne aux utilisateurs de changer leurs mot de passe, le clic sur ce lien affiche la la page web suivante: (2pts)
b. Programmer cette page, le bouton OK permet de vérifier la réponse proposée (réponse sécurité);(2pts) - Si la réponse est correcte la page web suivante s’affiche :
c. Programmer cette page, le bouton Valider permet de modifier le mot de passe. (2pts) 3. Créer une page web de mise à jour des SPAM dont les commandes sont : a) Le compte utilisateur doit être récupéré automatiquement à partir de la connexion. (1pt) b) un bouton ajouter SPAM. (2pts) c) Un bouton modifier SPAM, mais avant la validation de la modification l’utilisateur doit confirmer un code génère aléatoirement : (4pts)
d) Des boutons de navigation. (3pts) Pour exécuter une commande l’utilisateur doit se connecter tout d’abord. 4. Créer une page web pour afficher les SPAM arrivés au compte d’un utilisateur donné aussi la taille reste disponible(*). (3pts) (*)= 10 Go – la somme des tailles (fichier attaché) – la somme (tailleSPAM) 5. Créer un fichier XSLT pour le fichier SPAM.xml (Dossier II). (2pts) 6. Créer un DTD pour la validation de fichier SPAM.xml (2pts) 7. Ajouter un bouton qui permet d’afficher le fichier SPAM.xml. (2pts)
Examens de Fin Formation 2013 Pratique - Jour 2 - Variantes (4, 5, 6)
Variante 6
Dossier 1 : (24 pts) La Société GONET veut développer un nouveau système de messagerie pour mieux organiser l’échange des informations avec d’autres personnes utilisant Internet et des systèmes de messagerie différents. Ainsi, les utilisateurs peuvent échanger des documents, des feuilles de calcul, des graphiques et divers autres éléments dans des messages électroniques, consulter les éléments disponibles dans les dossiers publics ou publier des éléments dans des dossiers publics afin que d’autres utilisateurs puissent y accéder. Les utilisateurs de système réclament aux administrateurs qu’il n’y a pas des espaces pour organiser leurs messages personnels ou même professionnels. Les concepteurs proposés la conception suivante : Le schéma relationnel de la base de données : N.B : Les champs marqués en gras et soulignés représentent les clés primaires des tables et les champs marqués par # représentent les clés étrangères. Table_Compte (Compte, Nom, prenom, MotPasse, DateCreation, Tailleintialle, Tailledisponible, QuestionSecurite, ReponseSecurite, Etatcompte) Table_Courrier (NCourrier, DateArriv, CompteExpéditeur#, Sujet, contenu, EtatCourrier, TypeCourrier#) Table_TypeCourrier (CodeType, LibTypeCourrier) Table_FichierAttache (code_Fichier, Lib_Fichier, Format, Taille, NCourrier#) Table_BoiteReception (CompteRecepteur#, NCourrier#, DateReception, EtatRecp) Table_Journal (CodeJournal, NomJournal, NCourrier#,Compte#, Datepublication, TailleJournal, TypeJournal, EtatJournal) Descriptions, Détails et contraintes des colonnes de la base en énoncé.
Travail à faire : Enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes. 1) Créer la base de données BDExamen, puis ajouter un jeu d’essai dans chaque table. (4pts) 2) Créer une procédure stockée qui affiche les journaux d’un compte utilisateur dont le nom et le prénom en paramètres. (2pts) 3) Créer une procédure stockée qui affiche les comptes des expéditeurs (tous les champs) envoyant des fichiers format MS Excel en tant que fichier attaché (une obligation d’utiliser un curseur pour parcourir la table courrier dans cette question). (3pts) 4) Créer une fonction qui retourne la taille totale des journaux d’un compte récepteur donné en paramètre. (3pts) 5) Créer une fonction qui retourne les informations (N° compte, Nombre de messages journal perso, Nombre de messages journal prof). (4pts) 6) Créer un trigger qui empêche l’ajout d’une ligne dans la table journal si la valeur de la colonne EtatCourrier est non ou si la taille totale des fichiers attachés est supérieure à 8% de la taille disponible du compte récepteur. (4pts) 7) Créer un trigger qui lors de l’insertion d’une ligne dans la table journal et si la taille totale des fichiers attachés est supérieure à la taille disponible de ce compte récepteur, ce courrier sera stocké automatiquement dans le compte administrateur dont les infos (compte= it@fsjobs.com, DateArriv= date d’aujourd’hui) (4pts) Dossier 2 : (30pts) GONET souhaite développer une application « client/serveur » qui utilise la base de données du dossier 1 dont les fonctionnalités sont les suivantes : 1. Créer un formulaire de connexion pour se connecter au système de messagerie. (3pts) 2. Créer la classe Journal (les deux constructeurs par défaut et d’initialisation, les propriétés). (2pts) 3. Ajouter les méthodes suivantes à la classe Journal: a. AjouterJournal() : permet d’ajouter l’objet concerné dans la table journal. (1pt) b. SupprimerJournal() : permet de supprimer le journal concerné. (1pt) c. ModifierJournal() : permet de modifier le journal concerné (1pt) 4. Créer un formulaire de mise à jour des journaux avec les commandes suivantes : a. Les boutons Ajouter, Modifier et supprimer.(utiliser les méthodes de la classe Journal) (3pts) b. Des boutons de navigation. (2pts) c. Le numéro de compte est choisià partir d’une liste déroulante et lors d’un choix d’un compte les infos de ce compte s’affiche automatiquement. (1pt) 5. Créer un formulaire, pour la validation des BoiteReception, contenant une grille, ajouter une case à cocher pour valider ou rejeter une BoiteReception à cote de chaque ligne. Si l’administrateur valide une boite de réception, un message sera introduit automatiquement dans la table courrier dont les infos sont : (5pts)
6. Créer un formulaire de filtrage et de recherche contenant une grille, une zone de saisie (Compte) et une liste déroulante (Type journal) qui affichent la liste des journaux selon un critère de recherche ou de filtrage. (4pts) Filtrage automatique sur la partie de mot saisi dans la zone compte, le programme laisse seulement les courriers dont le compte contient la partie du mot dans la zone de saisi. 7. Créer un formulaire permettant d’afficher la taille en octets par mois des messages envoyés dans le journal pour un compte et une année en paramètres. (2pts) 8. Créer un état qui imprime la liste des journaux arrivée à un compte donné. Ajouter une graphique se forme d’une courbe qui représente la taille en octets des journaux pour l’ensemble des comptes. (5pts) Dossier 3 : (26 pts) GONET souhaite développer un site web dynamique permettant une utilisation simple et facile de cette solution Web. La base de données reste la même. 1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans ce qui suit. (1pt) 2. Créer une page web qui permetaux utilisateurs de se connecter
a. Le lien « j’ai oublié mon mot de passe » donne la chance aux utilisateurs de changer leurs mot de passe, le clic sur ce lien affiche la page web suivante: (2pts)
b. Programmer cette page, le bouton OK permet de vérifier la réponse proposée (réponse sécurité). (2pts) - La réponse correcte la page web suivante s’affiche :
c. Programmer cette page, le bouton valider permet de modifier le mot de passe. (2pts) 3. Créer une page web de mise à jour des Journaux dont les commandes sont : a) Le compte utilisateur doit être récupéré automatiquement à partir de la connexion. (1pt) b) un bouton ajouter un journal, mais avant l’ajout l’utilisateur doit confirmer un code génère aléatoirement : (4pts)
c) Un bouton supprimer journal. (2pts) d) Des boutons de navigation. (3pts) Pour exécuter une commande l’utilisateur doit se connecter tout d’abord. 4. Créer une page web pour afficher les journaux d’un utilisateur donné et aussi la taille restante disponible(*). (3pts) (*)= 10 Go – la somme des tailles (fichier attaché) – la somme (TailleJournal) 5. Créer un fichier XSLT pour le fichier journal.xml (Dossier II). (2pts) 6. Créer un DTD pour la validation de fichier journal.xml. (2pts) 7. Ajouter un bouton qui permet d’afficher le fichier journal.xml. (2pts)
Télécharger Les Examens de Fin Formation 2013 Pratique - Jour 2 - Variantes (4, 5, 6) :