Vous êtes sur la page 1sur 16

Introduction Access

Rappel Merise et analyse dun dossier


Prochain cours = interrogation sur Merise

Dfinition (limitation) du
Le plus dur domaine au sein de lexistant.

Analyse Ltude des besoins conduit au


(Exemple mthode cahier des charges
Merise) En marge,
Dictionnaire des donnes rdaction de divers
documents :
MCD MLD MPD Cahier des charges,
rgles de gestion,
MPD documentations
diverses.
Implanter les tables
Juste de la technique Diverses autres actions
Partie locale partie distante non dtailles ici :
Information et formation
Dveloppement Ecrans de saisie des utilisateurs.
(exemple : Access) Achat du matriel
Etat de sortie (tat + requtes) Prparation du
dploiement
pas de programmation,
code dans 1% des cas

automatismes permettent de
faire des fiches mthodes

Attention : rgle des 80/20

access-fil de tp-pour F. Thiberville 08/10/2003 Page 1/16


lves-2003.doc
SGBD = Systme de gestion de bases de donnes
Outil pour saisir, stocker, consulter, modifier ou supprimer des donnes.

Donnes ventuellement complexes et nombreuses

Ex : Access, Mysql, Oracle, Sybase,

Access peu coteux (licence ducation), rencontr partout.


Mais taille de base modeste, toutes les scurits ne sont pas gres, faiblesse en
rseau avec de nombreux utilisateurs.

MySQL trs adapt des interfaces Web, beaucoup utilis gratuit.

Oracle et Sybase = gros systme, trs performant, beaucoup plus professionnel.

Un exemple
Consultation dune appli finie dabord en mode utilisateur,
puis consultation dune appli finie en mode dveloppement

Observation de la structure de lappli.


tables,
formulaires dpendants pour la saisie des tables
formulaires indpendant pour menus crans de paramtrage
tats de sortie (donc des requtes)
des macros (ou du code) pour enchaner le tout

LES TABLES
Consultez le modle le modle

Consultez la fiche table

Lors du cours nous allons :

Crer la table fournisseur

Insister sur la cration des cls

Saisir des donnes dans la table

Excuter une requte exemple consultation des ventes

access-fil de tp-pour F. Thiberville 08/10/2003 Page 2/16


lves-2003.doc
LES FORMULAIRES
Intrts :
Ergonomie
Rapidit
Cohrence et contrle
Vue et accs personnaliss

Formulaires dpendants Diffrent de Formulaires indpendants


(saisie, modification) (Menus et paramtrages)

Le formulaire affiche un enregistrement la fois, principe du curseur sur la table.

Ne pas oublier de contrles dans le formulaire :

Tous les champs de la table exigent un contrle dans le formulaire sauf :


Champs fils dans un sous formulaire (facultatif)
Numro automatique (facultatif)

Formulaire simple
Construction dun formulaire simple
Une table exige son formulaire dpendant
Un champ dans la table exige son contrle dpendant

Quand vous travaillez sur un formulaire, les modifications apportes aux


enregistrements (modification ou ajout) sont prises en compte :
ds que vous passez d'un enregistrement un autre.
ds que vous fermez le formulaire.
Il n'est donc pas ncessaire de procder une opration particulire.

Consulter la fiche les formulaires


Consulter la fiche Principales tapes pour crer un formulaire

Formulaire ncessitant une liste


Construire un formulaire ncessitant une liste.
Quand une liste est-elle ncessaire ?
Chaque cl trangre exige sa liste (sauf champ fils dans sous formulaire)

Formulaire avec un sous formulaire


Construire un formulaire avec un sous formulaire.
Relation de 1 plusieurs

Consulter la fiche rgles et proprits vrifier obligatoirement .


access-fil de tp-pour F. Thiberville 08/10/2003 Page 3/16
lves-2003.doc
Prendre un peu de recul

Consulter la fiche organisation de lapplication

Consulter la fiche sous formulaire : comment saisir simultanment des informations dans 2
tables lies

Revenir sur :
Quand faire un sous formulaire ?
Quand faire une liste ?

Exercice : lve matire prof

Matire Prof
eleve travailler enseigner
1,n 1,n id_matire N 1,n 1,n id_prof N
SMB N
lib_mat A10 nom_prof A15
nom_eleve A15

Question 1 : combien de tables ?

travailler Matire enseigner Prof


eleve
SMB id_matire id_matire id_prof
SMB
id_matire lib_mat id_prof nom_prof
nom_eleve

Question 2 : combien de formulaires ?

Question 3 : quels seront les sous formulaires ?

Question 4 : quelles seront les listes ?

Question 5 : dans quel formulaire crer une nouvelle matire, un nouveau prof ?

access-fil de tp-pour F. Thiberville 08/10/2003 Page 4/16


lves-2003.doc
Les Requtes

Consulter la fiche requte

Requte simple avec


tri et titre

Attention ne mettre
que les tables utiles.

Sinon le nombre de
lignes de rponses est
multipli.

Placer une tiquette


(sparateur :

Requte avec calcul

Les champs utiliss


doivent tre prsent
dans la table mais pas
forcment affichs dans
la requte.

Requte avec jointure


normale, gauche,
droite

Attention une requte


droite ou gauche affiche
davantage de lignes
quune requte standard
Celle-ci naffiche que les
enregistrements en
correspondance dans
les 2 tables.
La jointure droite ou
gauche affiche la totalit
des enregistrements
dune des tables

access-fil de tp-pour F. Thiberville 08/10/2003 Page 5/16


lves-2003.doc
Requte avec 1 critre

Requte avec critres


multiples (et/ou)

Attention la rptition
du OU sur les 2 lignes

Requte avec
regroupement

Regroupement simple =
tri sur la premire
colonne

Regroupement avec
somme :

Attention ne pas
mlanger des niveaux
de dtails diffrents.

Exemple : ajouter le nom


du produit en
regroupement est
incohrent avec
rechercher le montant
total par client.

Se rfrer eu cours SQL

access-fil de tp-pour F. Thiberville 08/10/2003 Page 6/16


lves-2003.doc
Les Macros
3 points importants lors de la cration dune macro

Quel vnement dclenche la macro ?


Quel vnement
Quel objet (contrle ou formulaire ou )

Quelle liste dactions devra excuter la macro


Quels paramtres pour chaque action

Dans quel groupes de macro sauver la macro


Rutilisation

Consulter la fiche crer une liste de recherche dun enregistrement en entte de formulaire.

Consulter la fiche liste des vnements

Consulter la fiche Actualiser une liste aprs ajout dun enregistrement

Interrogation surprise (chambre htel, ornithologue)

Macro autoexec

Se lance automatiquement au dmarrage daccess.


Vrifier avant quelle noccasionne aucun plantage.

access-fil de tp-pour F. Thiberville 08/10/2003 Page 7/16


lves-2003.doc
Dun formulaire Etiquette et Bouton de Macro
un autre lancement de la macro et OuvrirFormulaire (nom et affichage)
Formulaire ses proprits Agrandir
servant de Nom Fermer
menu : Lgende
Sur clic
Boutons de Bouton de lancement de Macro
navigation dun la macro et ses AtteindreEnregistrement
enregistrement proprits Suivant ou prcdent ou premier ou
lautre Nom dernier ou nouveau
suivant prcdent Lgende
dbut fin Image
nouveau. Sur clic
Rechercher un Contrle indpendant de Macro
enregistrement type liste dans section AtteindreContrle
dtail. n_cde
TrouverEnregistrement
Requte daffichage de =[lm_cde]
la liste trie avec choix
des colonnes.

Macro sur vnement


aprs mise jour de
la liste.
Mettre jour le Boutons de lancement Macro douverture du formulaire de
contenu dune de la macro et ses saisie/modification de la table
liste droulante proprits OuvrirFormulaire (nom et affichage)
Nom Agrandir.
Lgende
Image Macro de rafrachissement de la liste
Sur clic ActualiserListe (nom de laliste) ex :
lm_vendeur

placer sur la liste droulante mais attention


lvnement dclencheur :
Si le bouton est :
dans le mme formulaire :
utiliser rception focus de la liste
dans un autre formulaire :
utiliser Sur entre du contrle
sous-formulaire dans le formulaire
principal.

Prendre un peu de recul :

Revenir sur macros, groupes de sous-macros, actions et arguments des actions.

Regroupement des macros par formulaire ?, par type daction ?.

Rutilisation des macros.


access-fil de tp-pour F. Thiberville 08/10/2003 Page 8/16
lves-2003.doc
Macros avec conditions
Exemple le bouton cocher on affiche seulement la liste correspondante :

vnement plac
sur le groupe
doption

Pour chacune des


cases coches
(valeur prise par
go_consulter),
DfinirValeur
indique laquelle des
listes modifiables
sera visible

Le choix dans les


listes modifiables
provoque louverture
de ltat demand.

La rcupration de llment slectionn dans la liste nest pas voqu ici (voir formulaire de
paramtrage)
access-fil de tp-pour F. Thiberville 08/10/2003 Page 9/16
lves-2003.doc
Les tats
Ltat tire ses donnes dune table ou le plus souvent dune requte.

Ltat est appel par une macro contenant laction OuvrirEtat. La requte associe est excute
automatiquement.

Ltat permet laffichage dinformation, jamais la saisie.

Consulter la fiche tat

tat simple - entte - dtail

Ralis directement sur


une table.

Partie fixe dans lentte


Lignes rptes dans le
dtail.

tat (et sa requte) Dtail des lignes de commandes regroupes par commandes avec
contenant un montant total par commande et total gnral
regroupement, sous total
et total gnral.

Requte sur plusieurs


tables :
attention au type de
jointure.
attention nutiliser que
les tables utiles.

Le regroupement nest
jamais fait dans la requte
car on perdrait les
informations de dtail.

Ltat ne peut afficher que


les donnes prsentes
dans la requte

Les valeurs calcules ne


peuvent provenir que de
champ de la requte ou de
contrles placs dans la
mme section.

Ajout dun entte et dun


pied de groupe pour le
regroupement.

access-fil de tp-pour F. Thiberville 08/10/2003 Page 10/16


lves-2003.doc
Dtail des produits commands (produit, qt, prix, montant) regroups par
commande et par client avec le total par commande, par client et le total
gnral.

tat (et sa requte)


contenant 2
regroupements, sous
total et total gnral

Attention utiliser le
pied de rapport (pied
dtat et non le pied de
page pour le total
gnral

Noter le comportement
diffrent des formules
selon la section o elles
se situent.

access-fil de tp-pour F. Thiberville 08/10/2003 Page 11/16


lves-2003.doc
Les fonctions Dom, CountDom, Maxdom,

Syntaxe gnrale:

=FonctionDom( nom du champ de la requte ; nom de la requte ; condition where )

Les fonctions DOM

MoyDom ou DAvg
CpteDom ou DCount
RechDom ou DLookup
MinDom ou DMin
MaxDom ou DMax
EcartyDom ou DStDev
EcartyPDom ou DStDevP
SomDom ou DSom
VarDom ou DVar

Les fonctions Dom renvoient une seule valeur

Utilises quand jai besoin dajouter dans ltat une valeur non prsente dans ma requte.

Exemple :

Dans le cas prcdent, je


dsire obtenir le
pourcentage du total par
commande par rapport au
total de toutes les
commandes.

Il me faut une requte


supplmentaire car cette
valeur nest ni dans la
requte source de ltat ni
calcule dans les sections
de ltat o jen ai besoin.

Le total gnral sera =SomDom("tot";"requte pour somdom")


obtenu avec la formule :
Ici pas de condition en Une condition scrirait de la mme faon que sur la ligne where de
argument 3 lditeur de requte.

Formule donnant le =(Somme([prix_u]*[qtt])/SomDom("tot";"requte pour somdom"))


pourcentage.
(aprs rglage de la
proprit affichage en %
du contrle)

access-fil de tp-pour F. Thiberville 08/10/2003 Page 12/16


lves-2003.doc
Formulaires de paramtrage pour ouvrir un tat

Consulter la fiche formulaire de paramtrage

Exemple :
Ouvrir un tat correspondant un seul client :

Le formulaire de paramtrage est un formulaire


indpendant (pas de source).

Il permet par exemple de slectionner ce client dans


une liste.

La liste est galement indpendante.

Elle prend ses informations dans la requte


suivante.

La table commande est insre dans la requte pour


avoir seulement les clients ayant commands.

Lvnement aprs mise jour de la liste est utilis


dans cet exemple pour dmarrer la macro qui va
appeler ltat

access-fil de tp-pour F. Thiberville 08/10/2003 Page 13/16


lves-2003.doc
Action : OuvrirEtat

La condition where contient linfo suivante

[les commandes d'un


client]![no_client]=[Formulaires]![menu
consulter]![lm_client]

cette condition Where sera aplique la


requte lors de son ouverture.
Elle a la forme :
Champ de la requte = valeur prise par la
liste modifiable

Attention cette condition est limite 256


caractres.
Si elle fait davantages il faut placer la condition
dans la requte (ligne critre

Ltat prend ses donnes dans une requte.

Requte lie ltat.

Un condition de plus de 256 caractres pourrait


tre places dans cette requte dans la
colonne no_client , ligne o :
=[Formulaires]![menu consulter]![lm_client]

Ltat avec
en-tte et pied de page
en-tte et pied de groupe client
en-tte et pied de groupe
date_commande
et section dtail

Noter le saut de page dans le pied de groupe


client

access-fil de tp-pour F. Thiberville 08/10/2003 Page 14/16


lves-2003.doc
Rsultat.

Consulter la fiche viter douvrir un tat sas enregistrement

Consulter la fiche

Consulter la fiche

access-fil de tp-pour F. Thiberville 08/10/2003 Page 15/16


lves-2003.doc
Barres de Menus

Voir fiche barre de menu.

Dmarrage de lapplication

Rappel sur Macro autoexec :


Lance automatiquement au dmarrage de lappli, bien vrifier labsence de plantage avant.

Voir outil dmarrage

access-fil de tp-pour F. Thiberville 08/10/2003 Page 16/16


lves-2003.doc

Vous aimerez peut-être aussi