Vous êtes sur la page 1sur 21

Compte Rendu TP N° 21

Exercice 1 :

1. Création de la base de données SQL server :

Create DataBase Crystal1


Go

use Crystal1
Go

Create Table Personne(


CIN NVarchar(50) Primary Key Not Null,
NOM NVarchar(50) Not Null,
PRENOM NVarchar(50) Not Null,
VILLE NVarchar(50) Not Null
)
Go

Create Table Voiture(


IMMATRICULE NVarchar(50) Primary Key Not Null,
MODELE NVarchar(50) Not Null,
ANNEE Date Not Null,
CIN NVarchar(50) Foreign Key References Personne(CIN) Null
)
Go

Create Table Accident(


NUM_ACCIDENT Int Primary Key Not Null,
DATE_ACCIDENT Date Not Null,
DOMMAGE NVarchar(50) Not Null,
VILLE_ACCIDENT NVarchar(50) Not Null,
CIN NVarchar(50) Not Null Foreign Key References Personne(CIN),
IMMATRICULE NVarchar(50) Not Null
Foreign Key References Voiture(IMMATRICULE)
)
Go

2. Création d’un état qui permet d’afficher la liste des accidents triés par Ville :

1. Après l’ajout d’un nouveau élément de type Crystal Report, on modifie la source des données :
2. On insère un Groupe en spécifiant un triage par rapport le champ VILLE_ACCIDENT de notre tableau de
base de données :

3. La mise en forme de notre état de la façon suivante :


4. Ce qui donne le résultat suivant :

3. Création d’un état qui permet de lister les accidents avec les noms des personnes impliquées :

1. Après l’ajout d’un nouveau élément de type Crystal Report, on ajout une ressource de données, en
choisissant les deux tableaux Personne et Accident :
2. Et en précisant la relation de clé étrangère entre les deux tableaux :

3. Après on spécifie les champs désirés d’être afficher dans le rapport :


4. On obtient le résultat suivant :

4. Création d’un état qui permet d’afficher la liste d’accidents par date :

1. Après l’ajout d’un nouveau élément de type Crystal Report, on modifie la source des données :

2. On insère un Groupe en spécifiant un triage par rapport le champ DATE_ACCIDENT de notre tableau de
base de données :
3. On ajoute les différents champs à notre état comme suivant :

4. Ce qui donne le résultat suivant :


5. Création d’un état qui permet d’afficher les accidents d’une personne donnée.

1. Après la création d’un nouveau élément de type Crystal Repot, on précise la source des données, cette
fois ci on ajoute une commande avec un paramètre comme suivant :

2. On précise le nom du paramètre et son type :


3. Dans l’étape suivante on ajoute les champs nécessaires dans notre formulaire :

4. On saisit la valeur demandé :


5. Et voilà les données seront affichées comme suivant :

Exercice 2 :

1. Création de la base de données SQL server :

Create Database Crystal2


Go

Use Crystal2
Go

Create Table Client(


Num_Client int Primary Key Identity(1,1),
CIN NVarchar(50) Not Null,
Nom NVarchar(50) Not Null,
Prenom NVarchar(50) Not Null,
Adresse NVarchar(50) Not Null,
Tel NVarchar(50) Not Null
)
Go

Create Table Produit(


Reference Nvarchar(50) Primary Key Not Null,
Designation NVarchar(50) Not Null,
Prix_unitaire float
)
Go

Create Table Commande(


Numro_Commande int Primary Key identity(1,1),
Date_Commande Date,
Num_Client int Foreign Key References Client(Num_Client)
)
Go

Create Table Commande_Produit(


Numero_commande int Foreign Key References Commande(Numro_Commande),
Reference Nvarchar(50) Foreign Key References Produit(Reference),
Quantité int
)
Go

2. Création d’un état qui permet d’afficher la liste des clients :

1. Après la création d’un nouveau élément de type Crystal Report, on précise la source des données :
2. Ici on ajoute les différents champs à notre formulaire :

3. Et on obtient le résultat suivant :

3. Création d’un état qui permet d’afficher les produits dont le prix est supérieur à un prix donné.

Il y on a deux façons pour filtrer les données, soit on passe le paramètre directement dans la requête SQL, ou on
ajoute un filtre paramétré dans notre formulaire, nous allons utiliser la deuxième méthode :

1. Premièrement on ajoute notre source de données, on choisissant le tableau Produit:


2. Après on précise les champs voulus :

3. Puis on ajoute un champ de paramètre nommé Prix de type Nombre:


4. Puis on clique droit sur l’élément qu’on désire filtrer et on choisit :

5. Après on sélectionne la condition et le paramètre qu’on a créé :

6. Au lancement de formulaire on écrit le prix :


7. Le résultat :

3. Création d’un état qui permet d’afficher toutes les commandes d’un client donné :

1. En premier temps on crée une commande SQL paramétrée pour recevoir les données, la requête sera
sous forme d’une jointure entre les trois tableau Commande, Client, Produit et Commande_Produit :

2. Après on choisit les champs nécessaire :


3. On entre le numéro du client désiré :

4. Et voilà le résultat :

3. Création d’un état qui permet de générer le bon de commande d’une commande donnée sous la
forme suivante:
1. Récupération des données à l’aide d’une commande paramétrée :

2. Création d’un champ de formule nommé Total :


3. L’ajout des différents champs nécessaires :

4. Le résultat :
Exercice 3 :

1. Création de la base de données :

create database Crystal3


Go

use Crystal3
Go

create table Etudiant(


Ins int primary key identity(1,1),
Nom nvarchar(50),
Prenom nvarchar(50),
Adresse nvarchar(50),
Groupe nvarchar(50),
Niveau nvarchar(50)
)

create table Matiere(


Code int primary key identity(1,1),
Nom nvarchar(50),
Coefficient int
)

create table Evaluer(


Ins int foreign key references Etudiant(Ins),
Code int foreign key references Matiere(Code),
Note float)

2. Création d’un état qui permet de générer le relevé de note d’un étudiant donnée sous la forme
suivante :
1. Configuration de la commande SQL :

2. On ajoute un champ de formule pour calculer le Coefficient * la Note de chaque enregistrement :

3. Puis on ajoute un champ de total cumulé nommée Sum_Coeff_Note pour calculer la somme des
enregistrements de champ ajouté Coeff_Note :
4. Puis on ajoute un autre champ de total cumulé nommée Sum_Coeff pour calculer la somme des
enregistrements de champ ajouté Coefficient :

5. Après on ajoute un champ de formule pour calculer le Moyenne Générale, où on divise les deux derniers
champs ajoutés « Sum_Coeff_Note / Sum_Coeff » :
6. Maintenant on ajoute un champ de formule pour déterminer le Mention :

7. Après on finalise par l’ajout des différents champs nécessaires à notre état :
8. Le résultat :

Vous aimerez peut-être aussi