Activité Comprendre le SGBD (Système de Gestion de Base de

publicité
Activité Comprendre le SGBD (Système de Gestion de Base de
données) du PGI
1. Architecture client serveur
1.1
Extrait schéma architecture SI
Serveur de fichiers
Profs élèves
Serveur d’impression
Win 2008
Reseau serveurs
Cr-cegid-srv
Base sql server 2008 R2
Wind 2008
1.2
ère
1
Serveur VMWare
Virtualisation
Postes Clients légers
phase : connexion à la base de données avec authentification de l’utilisateur et vérification de ses droits d’accès
1.3
Déroulement d’une transaction de consultation d’une facture via le module de Gestion commerciale
La consultation de la facture est faite via le formulaire du module de gestion commerciale : Ventes – Pièces – saisie du tiers et du
numéro de facture dans les contrôles de formulaire prévu à cet effet. La requête SQL est envoyée au SGBD de façon
transparente à l’utilisateur. Le résultat de la consultation est mis en page sous forme de formulaire d’affichage de la facture.
1 C. Guédat
1.4
Déroulement de l’exécution d’une requête SQL saisie par l’utilisateur via le moniteur SQL
Le moniteur SQL peut être lancé depuis n’importe quelle interface : gestion commerciale, Comptabilité, administration des
sociétés,… et à partir de n’importe quel menu.
L’icone de lancement du moniteur est en haut à droite de l’écran :
L’utilisateur saisit sa requête dans la zone « éditeur » du moniteur SQL et le résultat de son exécution est affiché en tableau sans
mise en forme particulière : jeu d’enregistrements résultant de la requête.
2 C. Guédat
2.
Schéma de la base de données – Consulter les tables du PGI
Pas de schéma physique visuel et pour cause : Plus de 1900 tables. Pour voir la liste des tables plusieurs possibilités :
2.1
Outil logiciel « Administrateur de base de données » (Celui qui a permis de créer la base)
Pour trouver la liste des tables du schéma : Outils – Tables – Onglet tables
Pour trouver les champs d’une table (i.e. les propriétés d’une relation dans le modèle relationnel) ici la table ECRITURE.
2.2
Liste des tables via la consultation de la tables DETABLES au choix dans le module Gestion commerciale ou
Comptabilité
ème
Bouton Moniteur SQL en haut à droite de l’écran
. Créer et exécuter la requête. En 7
ème
10 colonne son nom abrégé sur 3 lettres, puis les index.
colonne le nom de la table et en
Afficher par exemple uniquement le préfixe de la table « CHOIXCOD » :
3 C. Guédat
SELECT DT_PREFIX FROM DETABLES
WHERE DT_NOMTABLE="CHOIXCOD" ;
On trouve « CC »
2.3
Liste des champs via la consultation de la tables DECHAMPS au choix dans le module Gestion commerciale ou
Comptabilité
Afficher Les noms des champs et les types des champs de la table CHOIXCOD
SELECT * FROM DECHAMPS
WHERE DH_PREFIXE="CC" ;
Cette table contient des valeurs des familles d’articles, de taux TVA,…
Pour en connaître maintenant les valeurs :
SELECT * FROM CHOIXCOD
WHERE CC_TYPE="FN1" OR CC_TYPE="TRC" ;
3.
Préalable à SQL: connaître les spécificités de la syntaxe SQL Server
3.1
Afficher les données de la table ECRITURE et les exporter dans Excel
Étudier la signification des champs de cette table et leur valeur notamment :
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
E_JOURNAL
E_DATECOMPTABLE
E_NUMEROPIECE
E_NUMLIGNE
E_GENERAL
E_AUXILIAIRE
E_DEBIT
E_CREDIT
E_REFINTERNE
E_LIBELLE
E_DATECREATION
E_UTILISATEUR
E_DATEMODIF
E_CONTREPARTIEGEN
E_CONTREPARTIEAUX
E_MODEPAIE
4 C. Guédat
• E_DATEECHEANCE
Pour cela copier/coller la requête suivante dans le moniteur SQL :
SELECT E_JOURNAL, E_DATECOMPTABLE, E_NUMEROPIECE, E_NUMLIGNE, E_GENERAL, E_AUXILIAIRE, E_DEBIT, E_CREDIT,
E_REFINTERNE, E_LIBELLE , E_DATECREATION, E_UTILISATEUR, E_DATEMODIF, E_CONTREPARTIEGEN, E_CONTREPARTIEAUX ,
E_MODEPAIE, E_DATEECHEANCE
FROM ECRITURE
WHERE E_JOURNAL= "VTE";
Quels champs de cette table forment la clé primaire de la table ECRITURE ? (cette clé doit être unique)
E_JOURNAL + E_DATECOMPTABLE + E_NUMEROPIECE + E_NUMLIGNE
3.2
Connaître le format des champs pour écrire les requêtes SQL avec la bonne syntaxe
3.2.1 Champs texte VARCHAR
Avec le moniteur SQL de l’administrateur de base de données SQL standard :
SELECT * FROM LIGNE
WHERE GL_NATUREPIECEG='FAC'
SELECT * FROM LIGNE
WHERE GL_LIBELLE LIKE 'Cacao%'
Avec le moniteur SQL de gestion commerciale ou comptabilité :
SELECT * FROM LIGNE
WHERE GL_NATUREPIECEG="FAC"
SELECT * FROM LIGNE
WHERE GL_LIBELLE LIKE "Cacao%"
3.2.2 Champs de type réel NUMERIC
SELECT * FROM LIGNE
WHERE GL_TOTALHT=28.48
3.2.3 Champs DATETIME
Avec le moniteur SQL de l’administrateur de base de données SQL standard :
Les champs date sont codés en DATETIME SQL Server. Selon le paramétrage du serveur :
•
•
français : JJ-MM-AAAA hh:mm:ss[.nnn]
anglo-saxon : AAAA-MM-JJ hh:mm:ss[.nnn]
L’heure fait donc partie intégrante de la date. Ainsi la restriction sur une date : WHERE GL_DATEMODIF BETWEEN '15-06-2015
00:00:00.0' AND '16-06-2015 00:00:00.0'
Avec le moniteur SQL de gestion commerciale ou comptabilité :
Solution de contournement : YEAR(E_DATECOMPTABLE)=2015 AND MONTH(E_DATECOMPTABLE)=9 AND
DAY(E_DATECOMPTABLE)=15
Exemple avec MONTH : SELECT * FROM LIGNE WHERE MONTH(GL_DATELIVRAISON)=9
Pour accéder à la date système : Now()
5 C. Guédat
4.
Dictionnaire des données extraites à partir de requêtes SQL telles que vues dans le paragraphe 2
(à titre indicatif et sous réserve)
Propriété
Nom du champ
Commentaire
Table
Code tiers
T_AUXILIAIRE
Compte auxiliaire client
TIERS
Nature tiers
T_NATUREAUXI
CLI : Client ou FOU: fournisseur
TIERS
pays
T_PAYS
TIERS
Raison sociale
T_LIBELLE
TIERS
Adresse
T_ADRESSE1
TIERS
CodePostal
T_CODEPOSTAL
TIERS
Ville
T_VILLE
TIERS
Abrégé
T_ABREGE
Téléphone
T_TELEPHONE
TIERS
Fax
T_FACTURE
TIERS
Email
T_EMAIL
TIERS
Devise
T_REGIMETVA
TIERS
Date création
T_DATECREATION
TIERS
Date dernier mouvement
T_DATEDERNMVT
Date du dernier mouvement effectué par le tiers
TIERS
Compte collectif
T_COLLECTIF
Compte client collectif
TIERS
Représentant
T_REPRESENTANT
Commercial qui suit le client
TIERS
Code famille tarif
T_TARIFTIERS
Libellé famille tarif
Code mode règlement
Raison sociale abrégée
TIERS
TIERS
Voir CHOIXCOD
T_MODEREGLE
Libellé mode règlement
mode de règlement habituel du client
TIERS
Voir MODEREGL
Nature pièce (facture)
GP_NATUREPIECEG FAC : facture, AVS : avoir, BLC, CC,...
PIECE
Date pièce (facture)
GP_DATEPIECE
PIECE
Souche pièce (facture)
GP_SOUCHE
Numéro facture
GP_NUMERO
AVO, GLC, GCC, GAC
L'identifiant d'une facture est constitué d'un groupe de champ :
nature de la pièce + date de la pièce + code souche + numéro
chronologique de pièce
PIECE
PIECE
Référence interne
GP_REFINTERNE
Référence interne utilisée pour la pièce exemple : V160901 pour
la facture du 16/09 du client Bouchez
PIECE
Port-frais
GP_TRANSPORT
PIECE
% Remise
GP_REMISEPIED
PIECE
% escompte
GP_ESCOMPTE
PIECE
Le total TTC comme bien d'autre champ est enregistré dans la
base et non recalculé.
Total TTC Facture
GP_TOTALTTC
Acompte
GP_ACOMPTE
Référence article
GA_ARTICLE
Désignation
GA_LIBELLE
ARTICLE
Base tarif HT
GA_PVHT
ARTICLE
Code famille
GA_FAMILLENIV1
Code famille d'articles
ARTICLE
Code famille de taxe
GA_FAMILLETAXE1
TN, TR,…
ARTICLE
Quantité physique (en stock)
GQD_PHYSIQUE
Num ordre ligne
Quantité (article facturé)
GL_NUMLIGNE
GL_QTEFACT
PIECE
PIECE
Identifiant d'un article
ARTICLE
DISPODETAIL
Numéro chronologique de ligne dans la facture. Comme toutes
les factures possèdent une ligne 1, 2 3… Ce numéro est relatif
par rapport à l'identifiant d'une pièce. Donc en réalité
l'identifiant d'une ligne facture est constitué de : nature de la
pièce + date de la pièce + code souche + numéro chronologique
de pièce + numéro chronologique de ligne!
Quantité d'article facturé apparaissant sur un une ligne de la
facture
LIGNE
LIGNE
6 C. Guédat
Souche pièce
AVO : avoir, GLC : Bon Livraison client, GCC commande client,
GAC
SH_SOUCHE
SOUCHE
Libellé souche
SH_LIBELLE
Utilisateur
US_UTILISATEUR
Libellé utilisateur
US_LIBELLE
Code TVA
TV_CODETAUX
Code TVA est en fait constitué du code taux : TN, TR, TSR +
TXCPTTVA
Régime TVA
TV_REGIME
Régime TVA : FRA pour France
TXCPTTVA
Taux TVA vente
TV_TAUXVTE
Taux
TXCPTTVA
Code mode règlement
MR_MODEREGLE
Code mode règlement : C01, LC1
MODEREGLE
Libellé mode règlement
MR_LIBELLE
Libellé mode règlement : chèque comptant,…
MODEREGLE
Type code famille
CC_TYPE
Les codes familles niveau 1 article ont un CC_TYPE="FN1";
Les codes familles tarif client ont un CC_TYPE="TRC"
CHOIXCOD
Code famille
CC_CODE
CHOIXCOD
Libellé de la famille
CC_LIBELLE
Pour les familles articles, CC_CODE=001 ,002,003….
Pour les familles tarif client CC_CODE=CON,DIV,PAT,REV
Pour les familles articles, CC_LIBELLE=cacao si CC_CODE=001 ….
Pour les familles tarif client CC_LIBELLE=confiseurs si
CC_CODE=CON,…
SOUCHE
Utilisateur créateur du client
UTILISAT
UTILISAT
CHOIXCOD
5.
Dictionnaire des données relatives aux tables ECRITURE et GENERAUX extraites à partir de
requêtes SQL telles que vues dans le paragraphe 2
Propriété
Nom du champ
Commentaire
Table
G_GENERAL
Compte général
GENERAUXL
G_LIBELLE
Libellé
GENERAUXL
G_ABREGE
Libellé abrégé
GENERAUXL
G_NATUREGENE
Nature du compte
GENERAUXL
G_TOTALDEBIT
Total débit
GENERAUXL
G_TOTALCREDIT
Total crédit
GENERAUXL
Numéro
d'exercice
E_EXERCICE
Exercice
ECRITURE
Code journal
E_JOURNAL
"ACH", "VTE","OD",…
ECRITURE
E_DATECOMPTABLE
Date comptable
ECRITURE
E_NUMEROPIECE
N° de pièce
ECRITURE
E_NUMLIGNE
N° de ligne
ECRITURE
E_GENERAL
Compte général
ECRITURE
E_AUXILIAIRE
Compte auxiliaire
ECRITURE
E_DEBIT
Débit
ECRITURE
E_CREDIT
Crédit
ECRITURE
E_REFINTERNE
Référence interne
ECRITURE
E_LIBELLE
Libellé
ECRITURE
E_DATECREATION
Date création
ECRITURE
E_UTILISATEUR
Dern. utilisateur
ECRITURE
E_DATEMODIF
Date dern. modif.
ECRITURE
E_CONTREPARTIEGEN
Compte général de contrepartie
ECRITURE
E_MODEPAIE
Mode de paiement
ECRITURE
E_CONTREPARTIEAUX
Compte auxiliaire de contrepartie
ECRITURE
E_DATEECHEANCE
Date échéance
ECRITURE
7 C. Guédat
Téléchargement