TROISIEME CHAPITRE : CONCEPTION D'UN LOGICIEL (BASE
DES DONNEES) NIVEAU PHYSIQUE
Cette &tape consiste a implementer le modele dans
le SGBD, c'est-A-dire le traduire dans un langage de definition de donnees. Le
langage que nous allons utiliser dans ce travail ce le SGBD Access de
Microsoft.
1. Modèle Physique des Données
En passant du Modele Logique des Donnees au Modele
physique des Donnees, pour le Modele Logique des Donnees ci-dessus, nous sommes
aboutis au Modele Physique des Donnees suivant :
2. Modèle Physique de Traitement
Dans ce modele nous avons congue les requetes qui nous
ont aide a interroger notre base des donnees. Voici le code SQL qui nous a
permi de construire quelques uns de ces requetes :
1. Journal en comptabilite generale
SELECT TExercice.CodeEx, TOpCOGE.NumOpCOGE,
TOpCOGE.DateOpCOGE, TOpCOGE.LibOpCOGE, TOpCOGE.Num PcCOGE,
TTransCOGE.NumTransCOGE, TCompteD.NumCompte, TCompteD./ntCompte,
TTransCOGE.MntDCOGE, TTransCOGE.MntCrCOGE FROM (TExercice /NNER JO/N TOpCOGE ON
TExercice.CodeEx = TOpCOGE.CodeEx) /NNER JO/N (TCompteD /NNER JO/N TTransCOGE
ON TCompteD.NumCompte = TTransCOGE.NumCpteCOGE) ON TOpCOGE.NumOpCOGE
=
TTransCOGE.NumOpCOGE WHERE (((TExercice.CodeEx)=[Veuillez
entrer le code de l'exercice]));
2. Determination du solde de chaque compte par exercice
comptable
SELECT TExercice.CodeEx, TOpCOGE.NumOpCOGE,
TOpCOGE.DateOpCOGE, TOpCOGE.LibOpCOGE, TOpCOGE.Num PcCOGE, TCompteD.NumCompte,
TCompteD./ntCompte, TCompteD.NatCompte, TTransCOGE.MntDCOGE,
TTransCOGE.MntCrCOGE, //f([natcompte]="Actif",[MntDCOGE]-
[MntCrCOGE],//f([natcompte]=" Passif",[MntCrCOGE]-
[MntDCOGE],//f([natcompte]="
Produit",[MntCrCOGE]-[MntDCOGE],//f([natcompte]="soldes de
gestion",[MntCrCOGE]-[MntDCOGE],[MntDCOGE]-[MntCrCOGE])))) AS Solde FROM
(TExercice /NNER JO/N TOpCOGE ON TExercice.CodeEx = TOpCOGE.CodeEx) /NNER JO/N
(TCompteD /NNER JO/N TTransCOGE ON TCompteD.NumCompte = TTransCOGE.NumCpteCOGE)
ON TOpCOGE.NumOpCOGE = TTransCOGE.NumOpCOGE WHERE
(((TExercice.CodeEx)=[Veuillez entrer le code de l'exercice]) AND
((//f([natcompte]="Actif",[MntDCOGE]-[MntCrCOGE],//f([natcompte]="
Passif",[MntCrCOGE]- [MntDCOGE],//f([natcompte]="
Produit",[MntCrCOGE]-[MntDCOGE],//f([natcompte]="soldes de
gestion",[MntCrCOGE]-[MntDCOGE],[MntDCOGE]-[MntCrCOGE])))))>0 Or
(//f([natcompte]="Actif",[MntDCOGE]-[MntCrCOGE],//f([natcompte]="
Passif",[MntCrCOGE]- [MntDCOGE],//f([natcompte]="
Produit",[MntCrCOGE]-[MntDCOGE],//f([natcompte]="soldes de
gestion",[MntCrCOGE]-[MntDCOGE],[MntDCOGE]-[MntCrCOGE])))))<O));
3. Determination du resultat par la formule «
RESULTAT = PRODUIT - CHARGE »
SELECT TExercice.CodeEx, TCompteD.NumCompte,
TCompteD.NatCompte, Sum(TTransCOGE.MntDCOGE) AS SommeDeMntDCOGE,
Sum(TTransCOGE.MntCrCOGE) AS SommeDeMntCrCOGE, Sum([MntCrCOGE])-Sum([MntDCOGE])
AS Resultat FROM (TExercice /NNER JO/N TOpCOGE ON TExercice.CodeEx =
TOpCOGE.CodeEx) /NNER JO/N (TCompteD /NNER JO/N TTransCOGE ON
TCompteD.NumCompte = TransCOGE.NumCpteCOGE) ON TOpCOGE.NumOpCOGE =
TTransCOGE.NumOpCOGE GROUP BY TExercice.CodeEx, TCompteD.NumCompte,
TCompteD.NatCompte HAV/NG (((TCompteD.NatCompte)=" PRODU/T" Or
(TCompteD.NatCompte)="CHARGE"));
4. Reclassement des comptes du Bilan
SELECT TExercice.CodeEx, TCompteD.NumCompte,
TCompteD./ntCompte, Sum(//f([natcompte]="Actif",[MntDCOGE]-
[MntCrCOGE],//f([natcompte]="
Passif",[MntCrCOGE]-
[MntDCOGE],//f([natcompte]="
Produit",[MntCrCOGE]-[MntDCOGE],//f([natcompte]="soldes de
gestion",[MntCrCOGE]-[MntDCOGE],[MntDCOGE]-[MntCrCOGE]))))) AS Solde, TCompteD.
PalierMasse, TCompteD.NatCompte FROM (TExercice /NNER JO/N TOpCOGE ON
TExercice.CodeEx = TOpCOGE.CodeEx) /NNER JO/N (TCompteD /NNER JO/N TTransCOGE
ON TCompteD.NumCompte = TTransCOGE.NumCpteCOGE) ON TOpCOGE.NumOpCOGE =
TTransCOGE.NumOpCOGE GROUP BY TExercice.CodeEx, TCompteD.NumCompte,
TCompteD./ntCompte, TCompteD. PalierMasse, TCompteD.NatCompte HAV/NG
(((Sum(//f([natcompte]="Actif",[MntDCOGE]-
[MntCrCOGE],//f([natcompte]="
Passif",[MntCrCOGE]-
[MntDCOGE],//f([natcompte]="
Produit",[MntCrCOGE]-[MntDCOGE],//f([natcompte]="soldes de
gestion",[MntCrCOGE]-[MntDCOGE],[MntDCOGE]-[MntCrCOGE]))))))>0 Or
(Sum(//f([natcompte]="Actif",[MntDCOGE]-
[MntCrCOGE],//f([natcompte]="
Passif",[MntCrCOGE]-
[MntDCOGE],//f([natcompte]="
Produit",[MntCrCOGE]-[MntDCOGE],//f([natcompte]="soldes de
gestion",[MntCrCOGE]-[MntDCOGE],[MntDCOGE]-[MntCrCOGE]))))))<O) AND
((TCompteD.NatCompte)="actif" Or (TCompteD.NatCompte)="passif"));
PRESENTATION DE QUELQUES ETATS
1. cBil'an
2. Ta6l'~au d'evl'oitation general'
|