_OK Le Logiciel ACCESS Par La Pratique

27
Dr Mireille Cleret Le Roux : [email protected] Dr Franck Le Duff : [email protected] LABORATOIRE D’I NFORMATIQUE MEDICALE F ACULTE DE MEDECINE UNIVERSITE DE RENNES I S ERVICE DU PR P. LE BEUX MSBM INFORMATIQUE MEDICALE LES SYSTEMES DE GESTION DE BASE DE DONNEES Le Logiciel ACCESS par la pratique ANNEE 2000-2001

Transcript of _OK Le Logiciel ACCESS Par La Pratique

Page 1: _OK Le Logiciel ACCESS Par La Pratique

Dr Mireille Cleret Le Roux : [email protected] Franck Le Duff : [email protected]

LABORATOIRE D’INFORMATIQUE MEDICALEFACULTE DE MEDECINE

UNIVERSITE DE RENNES IS ERVICE DU PR P. LE BEUX

MSBM

INFORMATIQUEMEDICALE

LES SYSTEMES DE GESTION DE BASE DE

DONNEES

Le Logiciel ACCESS par la pratique

ANNEE 2000-2001

Page 2: _OK Le Logiciel ACCESS Par La Pratique

Access - page 2

Les bases de données (généralités)

Une base de données peut être définie comme étant un ensemble structuré et non redondant des données et des relations

les associant, accessibles par l’ordinateur dans différentes applications et pouvant satisfaire simultanément plusieurs

utilisateurs en un temps opportun. Elle permet d'enregistrer et de mettre à jour des données, d'extraire à la demande tout

sous-ensemble de ces données et de générer de nouvelles connaissances à partir des informations accumulées.

Exemple de base de données

Gestion d'un fichier de patients contenant leur nom, prénom, date de naissance, le service où ils sont hospitalisés et les

résultats d’examen.

-Ces informations élémentaires (nom, prenom, etc...) s'appellent des rubriques ou items ou champs .

-Chaque patient correspond à une fiche ou un enregistrement contenant les champs.

-La pile de fiches identiques dans sa structure s'appelle un fichier ou une table .

-La base de données peut être constituée d'un ou plusieurs fichiers reliés ou non entre eux (par exemple un fichier

de patients relié à un fichier des services hospitaliers).

Que peut on faire sur des fiches

Créer

Stocker

Retrouver pour consulter ou modifier

Supprimer

Imprimer

Que peut on faire avec un fichier ou une base de données

Gérer un ensemble de fiches

Effectuer des tris et des sous sélections : selectionner les fiches correspondant à un ou plusieurs critères

définis, statistiques descriptifs (nombres, moyennes, sommes ...)

Editer ces sélections :

à l’écran : affichage de listes

sur papier : les états (compte rendus mis en forme du contenu de la base), des étiquettes

(mailing), des graphiques (courbes, camemberts, ...)

Page 3: _OK Le Logiciel ACCESS Par La Pratique

Access - page 3

Création d'une base : Cahier des charges et analyse préalable

1 Les étapes1) Définir les objectifs et le contenu

Quel est le but de la base de données ?

Quelles informations sont utiles ?

Comment seront exploitées les données ?

2) Définir les informations

Identifier la structure commune (partie constante) -> les champs

Par exemple : fichier idendité patient :

Nom, Prénom, Date de naissance,... = structure ou modèle (nom des champs)

Dupont René, Durand Alfred,... = le contenu des champs

3) Décrire les champs

Quel type de données : alphanumérique, nombres, données booléennes (Vrai, Faux), données chronologiques

(date, heure) ou données multimédia (images fixes, animées, sons).

Définir leurs propriétés : indexés, uniques (clé primaire), choix dans une liste, etc.

4) Normalisations

Définir les tables et les relations entre les tables. La normalisation consiste à répartir les informations dans

différentes tables reliées entre elles, de façon à éviter d'enregistrer les même données à plusieurs reprises.

2-2 Le développement de projets informatiques médicaux

1) Le modèle en cascade

Analyse des besoins

Spécification

Conception

Réalisation

Validation

Maintenance

Page 4: _OK Le Logiciel ACCESS Par La Pratique

Access - page 4

2) Le modèle en spirale

2-3 Trois objectifs importants

- Eviter les redondances inutiles ( Normalisation ).

- Veiller à l' intégrité réferentielle : C'est à dire, vérifier que les données, contenues dans 2 tables relièes entre elles,

concordent.

- Définir une clé primaire : Ce champ clé doit permettre d'identifier de manière univoque l'enregistrement correspondant.

En outre, elle permet de trier les données selon cette clé et de créer un index qui accélère les recherches.

Validation Analyse

Implémentation Conception

3

2

1

0

Page 5: _OK Le Logiciel ACCESS Par La Pratique

Access - page 5

Présentation générale d'ACCESSAccess est un SGBD relationnel utilisant des tables et permettant de représenter les multiples relations entre les données.

Une base de données Access est constituée de 5 types d'objets :

1-Les tables contiennent les informations. Elles sont constituées de lignes et de colonnes. Une ligne correspond à un

"enregistrement". L'intersection entre une ligne et une colonne est appelée "champ".

Ces tables peuvent être reliées les unes aux autres par des relations d'un champ de la première table à un champ de la

seconde, ces 2 champs se rapportant aux mêmes informations.

2-Les formulaires affichent à l'écran les informations issues des tables. Ils servent à saisir de nouveaux enregistrements,

à visualiser à l'écran les données des tables, à exécuter des actions commandées par l'utilisateur par l'intermédiaire des

macros et des modules. Ils constituent l'interface entre la base de donnée et l'utilisateur.

3-Les requêtes permettent de définir des sous sélections et des tris à partir de critères particuliers, de créer de nouvelles

tables ou d'ajouter des enregistrements.

4-Les états affichent les données choisies sous forme de rapports structurés ou de graphiques. Ils sont plus appropriés à

l'impression.

5-Les macros (langage macro d’Access) et les modules (Visual Basic Access) permettent d'automatiser certaines actions.

Tous ces objets sont accessibles à partir de la fenêtre "Base de données" : un onglet pour chaque type d'objet et 3 sortes

de bouton :

-Créer : Nouveau

-Visualiser : Ouvrir

-Structurer : Modifier

Quelques consignes et utilitaires

Page 6: _OK Le Logiciel ACCESS Par La Pratique

Access - page 6

-Enregistrer regulièrement votre application (dans votre dossier personnel).

-Compactage : Réduire la place utilisée par la base sur le disque dur. Pour compacter la base de données, il faut la quitter

et aller dans le menu outil/utilitaire de base de données. A FAIRE REGULIEREMENT.

-Réparation : Lorsque la base à un problème, aller dans le menu outil/utilitaire de base de données

-Documentation : Toutes les informations sur les objets et propriétés de la base pour impression. Menu

outil/analyse

- L’aide est très instructive : Ne pas hésiter à l’utiliser (touche F1) pour le vocabulaire et la syntaxe des fonctions Access

et Visual Basic ! ! !

Page 7: _OK Le Logiciel ACCESS Par La Pratique

Access - page 7

Exercice 1: Création d'une base : Cahier des charges et analyse préalable

Un médecin de laboratoire biologique informatise la gestion des différents examens biologiques et de

leurs résultats pour les patients des différents services. L'application doit comporter des écrans de

visualisation et de saisie des données. De plus, il souhaite obtenir diverses informations et

notamment:

Les résultats anormaux (repérés de façon automatique). Le graphique de l'évolution des résultats d'un

examen biologique pour un patient donné. L'édition d'étiquettes pour chaque patient.

Les récapitulatifs par service et par patient des examens demandés.

Effectuer l’analyse préalable de la base de donnée souhaitée

et proposez un schéma de suivi du projet.

Page 8: _OK Le Logiciel ACCESS Par La Pratique

Access - page 8

Exercice 2 : Création de la base et d’une table

Il s’agit de créer dans une nouvelle base, la table patient contenant les champs NIP, nom, prénom, datede naissance, code postal et ville en veillant à définir les propriétés de chaque champ (nom, type, taille,valeur par défaut, masque de saisie ...), la clé primaire et les index. Attention ! Champ date auformat ”09/09/1999 ” pour gérer les siècles ! Créer un index sur Nom + Prénom + Date de naissance.

Créer une dizaine d’enregistrements dans cette table.

CREATION D’UNE BASE

Pour créer une nouvelle base, faire Fichier/Nouvelle base et donner un nom à cette base (bdtp).

CREATION D’UNE TABLE

Pour créer une nouvelle table, à partir de la fenêtre Base de donnée -> Onglet Table -> Bouton Nouveau.

Cinq modes de création possibles :

- Mode feuille de calcul : la table est créée directement sur la feuille de calcul (c'est à dire un tableau avec les champs par

colonnes et les enregistrements par lignes). Les noms des champs sont modifiés par double click sur l'entête de colonne.

- Mode Importer la table à partir d'un fichier exterieure à la base. Plusieurs formats de fichiers sont autorisés : excel,

texte, dbase, etc.

- Mode Attacher la table à partir d'une table access d'une autre base ou d’un fichier excel.

- Mode assistant table qui permet d'utiliser et d'adapter des exemples de table prédéfinis.

- Mode Création de table est l'option préconisée car elle ouvre une fenêtre contenant la liste des champs et leurs

propriétés et permet de les modifier directement.

Page 9: _OK Le Logiciel ACCESS Par La Pratique

Access - page 9

Choisir le mode création.

Chaque ligne correspond à un champ avec son nom et son type de données. Lorsqu'un champ est sélectionné, ses

propriétés s'affichent dans la partie inférieure de la fenêtre et il est possible de les modifier.

Cette fenêtre est accessible à tout moment à partir de la fenêtre Base de donnée -> Onglet Table -> Bouton Modifier.

Les types de données

Numérique

Texte (chaînes de caractère)

Date/Heure

Booléen (oui/non)

NuméroAuto (Compteur : entier long qui s'incrémente de 1 à chaque nouvel enregistrement)

...

Les propriétés

-Taille : nombre de caractères pour un champ texte ou type de nombre pour un champ numérique

(entier long, réél double, ...)

-Format : -fixe (2 chiffres après la virgule), monétaire ou pourcentage pour un champ numérique

-date abrégé (01/01/98), date complet (lundi 2 janvier 1998), jj/mm/ aaaa (09/09/1999)

...pour un champ date

-oui/non, vrai/faux, actif/ inactif pour un champ booléen

-Légende : Entête de la colonne (par défaut, l'entête de la colonne est le nom du champ)

Page 10: _OK Le Logiciel ACCESS Par La Pratique

Access - page 10

9 = chiffre facultatif

# = chiffre ou espace facultatif

L = lettre obligatoire

? = lettre facultative

> = les caractères à droite sont convertis en maj

< = les caractères à droite sont convertis en min

.,;:/() caractères spéciaux

-Des valeurs par défaut peuvent être attribuées aux champs.

Ex : “ 35000 ” dans le champ CP

-Valide si : Des contrôles sur les champs peuvent être spécifiées

Dans le champ CP : valide si = Comme “ ##### ” oblige à saisir un code postal de 5 caractères.

-Chaine vide autorisée ou non

-Null interdit ou non

-….

CLE PRIMAIRE

Le champ clé primaire permet d'identifier de manière univoque chaque enregistrement. Il peut correspondre à un ou

plusieurs champs existant. Ici, c’est le NIP (Numéro Permanent du Patient).

L'attribution de la clé primaire s'effectue en sélectionnant le ou les champs et en cliquant sur l'item clé primaire de la barre

de menu ou sur l’icône . Si aucune clé primaire n'est définie à la création de la table, Access peut ajouter

automatiquement un champ clé primaire.

INDEX

Afin d’accélérer les recherches, il faut créer des index :

- sur les champs assurant les relations entre les tables

- les champs souvent référencés.

Page 11: _OK Le Logiciel ACCESS Par La Pratique

Access - page 11

Des index multi-colonnes peuvent être crées avec la commande Affichage/Index.

Quelques commandes utiles

Supprimer un champ = sélectionner la ligne du champ et appuyer sur la touche SUPPR .

Déplacer un champ = sélectionner le champ. Placer le curseur sur la ligne et appuyer sur le bouton gauche et faire glisser.

SAISIE ET VISUALISATION DES DONNEES

La saisie de données dans une table : onglet Table-> Bouton Ouvrir

On peut visualiser les enregistrements créés, ajouter des enregistrements à la suite des précédents, les modifier ou les

supprimer.

Supprimer un enregistrement = sélectionner la ligne ou les lignes et appuyer sur la touche SUPPR.

Changer la largeur d’une colonne = cliquer sur le trait vertical de la colonne et faire glisser.

Déplacer une colonne = sélectionner la colonne et faire glisser.

Fichier/Enregistrer la mise en forme permet de sauvegarder les modifications.

On peut effectuer quelque traitements comme le tri des enregistrements sur les valeurs d'un (menu outils - tri) ou

plusieurs champs (menu - outils - filtre / tri avancé)

On peut rechercher des enregistrements particuliers (outre les fonctions rechercher/remplacés habituelles des traitements de

texte). Pour cela, on utilise la fonction filtre :

-par sélection (1 seul critère)

-par formulaire (plusieurs critères sur plusieurs champs)

-par filtre / tri avancé (fonctionnement identique à celui des requêtes et enregistrable en tant que telle)

Quelques commandes utiles dans la fenêtre Base de données

Supprimer une table = cliquer sur le nom de la table et appuyer sur la touche SUPPR .

Copier une table = utiliser Edition/Copier et Edition/Coller. (CTRL + C et CTRL + V)

Page 12: _OK Le Logiciel ACCESS Par La Pratique

Access - page 12

Exercice 3 : Création de requêtes sur une table

Il s’agit de faire plusieurs requêtes sur la table patient :1- Les noms, prénoms et villes des patients dont le nom commence par “ D ” et qui sont domiciliés à Rennes ou à

Vannes.2- Les âges de chaque patient calculés à la date d’aujourd’hui (en années).3- Même chose mais avec un calcul en mois lorsque le patient a moins d’1 an.4- Affecter chaque patient dans une classe d’âge (0 - 4 ans, 5 - 9 ans, ...). Le calcul de la tranche d’âge se faisant par une

fonction visual basic écrite dans un module.5- Le nombre de patients et leur moyenne d’âge par ville.6- Les patients dont la date de naissance est comprise entre 2 bornes (modifiables, définies lors de l’interrogation)7- Les doublons sur le nom du patient.

Les requêtes permettent de définir des sous sélections et des tris à partir de critères particuliers, de créer de nouvelles

tables ou d'ajouter des enregistrements. Elles sont plus puissantes que les sous-sélections directes dans les feuilles de

calcul des tables et sont enregistrées dans la base.

Mode création directe : Il affiche la fenêtre de création de requête.

C'est le mode de création préconisé car il permet de travailler sur

plusieurs tables à la fois.

Il faut ensuite ajouter la table patient avec l’icône

-Le mode création permet de créer la requête (comme ci dessous).

-Le mode SQL permet de visualiser, modifier ou même créer la requête SQL

correspondante (regardez pour chaque requête, ce que cela donne en SQL).

-Le mode feuille de données permet de visualiser le résultat de la requête

Dans la partie supérieure de la fenêtre, on ajoute les tables et les

relations nécessaires à la requête. Dans la partie inférieure, les

champs utilisés (par colonne). Il est possible de glisser un champ

de la table (partie supérieure) vers une colonne de la requête (partie

inférieure).

Pour chacun de ces champs, il est possible de :

-afficher ou non le champ (case à cocher)

-trier les résultats selon les valeurs du champ

-définir des critères de sélection (et/ou) avec les opérateurs de

comparaison.

Page 13: _OK Le Logiciel ACCESS Par La Pratique

Access - page 13

Opérateurs de comparaison :

ENTRE : Permet de sélectionner dans un intervalle.

Par exemple : Critère de Date de naissance : Entre #01/01/1960# et #01/01/1990#

ET : Lorsque plusieurs conditions sont spécifiées dans plusieurs colonnes sur la même ligne, on obtient les

enregistrements vérifiant toutes les conditions.

OU : Les OU logiques s’obtiennent en écrivant les conditions sur des lignes différentes.

Cette requête correspond à la sélection des patients

(Nom, Prénom , Ville) dont le nom commence par

“ D ” et qui sont domiciliés à Rennes ou à Vannes :

(nom=D... et ville=Rennes) ou

(nom=D... et ville=Vannes)

CHAMPS CALCULES

La deuxième colonne est une expression qui permet de

calculer l’âge en années :

1999 - l’année de naissance.

“ age : “ -> le calcul est affecté à la variable age.

Pour être plus precis, il vaut mieux calculer l’âge par rapport à la date du jour : fonction Maintenant() :

age: Année(Maintenant())-Année([DateNaissance])

Autre méthode : utilisation de la fonction DiffDate (différence de date) en années (“ aaaa ”)

age: DiffDate("aaaa";[DateNaissance];Maintenant())

Rq : différence de date en mois (“ m ”), en jour (“ j ”)

Page 14: _OK Le Logiciel ACCESS Par La Pratique

Access - page 14

Pour créer des expressions, on peut utiliser le

générateur d’expression -> icône :

La fonction VraiFaux permet de spécifier une

condition :

Si l’age en mois est inferieur à 12 alors age = nb de

mois, sinon age = nb d’années

Création d’une fonction Visual Basic “ classedage ” dans un module “ calculs ” et utilisation de celle ci dansune requête

Onglet Module : Nouveau puis Enregistrer : nom = calculs

Insertion -> procédure fonction, public, classedage

Public Function classedage(age As Integer)

Dim borneinf As Integer

borneinf = Int(age / 5) * 5

classedage = borneinf & " - " & borneinf + 4 & " ans"

End Function

Puis dans la requête en cours : l’argument de classedage est l’âge calculé (en années) dans la colonne précédente

REGROUPEMENTS

Les regroupements permettent d’effectuer divers opérations : compter des enregistrements (compte), calculer des sommes

(somme), des moyennes (moyenne) par catégories.

Pour obtenir une regroupement, utiliser la commande Affichage/Opérations.

Rq : un regroupement peut se faire sur une expression. Par exemple : le nombre de patients par classe d’âge -> classe =

regroupement et patient = compte.

Page 15: _OK Le Logiciel ACCESS Par La Pratique

Access - page 15

REQUETES PARAMETREES

Un paramètre se

spécifie entre crochets

Au moment de leur

exécution, l’opérateur

saisit les valeurs des

paramètres dans la boite

de dialogue affichée.

Assistant recherche de doublons

Cet assistant permet de sélectionner les enregistrements d'une table ayant les mêmes valeurs pour un ou plusieurs

champs.

On l’utilise pour trouver les doublons sur le nom (Regarder ensuite ce que cela donne en mode création).

Informations complémentaires

Assistant non correspondance

Cet assistant permet de sélectionner les enregistrements d'une table n'existant pas dans une autre.

REQUETES ACTION

Contrairement aux requêtes sélections, les requêtes actions modifient les tables.

Requête de mise à jour : une requête de Mise à jour permet de modifier des valeurs dans une table. En utilisant la

commande Requête/Mise à jour, nous faisons apparaître le ligne Mise à jour.

Requête suppression : une requête suppression supprime d’une table les enregistrements vérifiant une condition.

Requête de création de table : la commande Requête/Création de table

Requête ajout : ces requêtes permettent d’insérer dans une table des lignes provenant d’autre table. Dans la requête, c’est la

table où ajouter qui doit être spécifiée.

Importation / Exportation

- Pour importer une table ou un fichier excel, texte, dbase, ...dans le menu Fichier -> Données externes /

Importer.

- Pour attacher sans importer un fichier (gain de place mais traitements restent possibles) -> Données externes /

Attacher

- Pour exporter une table ou une requête vers Excel par exemple : Il faut l'ouvrir et dans le menu Fichier ->

Enregistrer sous / Exporter.

Page 16: _OK Le Logiciel ACCESS Par La Pratique

Access - page 16

Exercice 4 : Base de données multi-tables

1- Créer les autres tables (services, séjours, groupes, laboratoire et demande). Il faut utiliser les listes de choix lorsquecela est possible (par exemple : affichage du nom, prénom et date de naissance au moment du choix du NIP dans la tableséjour.2- Créer les relations entre tables, avec intégrité référentielle et mises à jour en cascade.3- Donner le nombre de séjours par mois et par service (requête sélection).

BASE DE DONNEES MULTI-TABLES

La table Services ne contient qu’un champ : l’intitulé des

services.

De même pour la table Groupe : intitulé des catégories

d’examen (Chaque examen appartient à l’un de ces groupes).

Ces tables sont créés dans le but de facilité le choix des services et des groupes dans les

autres tables (liste de choix)

Les listes de choix

Les listes de choix permettent de proposer des listes de valeurs pour un champ (il est possible de limiter la saisie à cette

liste ou non). La liste peut être libre ou issue d'une table ou d'une requête.

On peut activer l'assistant liste de choix en sélectionnant l'item "liste de choix" dans la rubrique "type de donnée".

Pour la table Séjours , des listes de choix sont utilisées pour

le champ service (liste des noms de service par la table

Service) et pour le champ NIP (affichage de l’identité de

chaque patient).

Les propriétés des listes de choix sont les suivantes :

Page 17: _OK Le Logiciel ACCESS Par La Pratique

Access - page 17

-Nombre de colonnes de la liste (ex : liste de nip - nom - prénom - date de naissance -> 4 colonnes)

-Colonne liée : la colonne contenant l'information qui sera affectée au champ (ex : le nip). Lorsque la liste de choix

est issue d'une table, c'est en général la clé primaire (unique) qui est la colonne liée.

-Contenu : Pour une table ou une requête -> requête SQL sélectionnant les éléments de la liste

Pour une liste de valeurs -> les différentes valeurs entre " et séparées par des ;

-Limiter à liste ou non

-Nombre de ligne affichées (au delà, liste avec défilement)

La table Laboratoir e :

Répertoire des examens et leurs caractéristiques.

Page 18: _OK Le Logiciel ACCESS Par La Pratique

Access - page 18

La table Demande :

La liste de choix du séjour fait appel à une

requête sur 2 tables : Patients et Séjours (liées

entre elles sur le NIP). Ceci permet de cumuler

les informations portant sur le patient et le

séjour.

RELATIONS ENTRE TABLES

Les relations entre les tables :

- évitent de définir les liens lors de la création des requêtes,

- permettent de spécifier l’intégrité référentielle.

On visualise et modifie les relations entre les tables dans la fenêtre des relations (icône )

On affiche toutes les relations existantes (créées par liste de choix) avec l’icône

Page 19: _OK Le Logiciel ACCESS Par La Pratique

Access - page 19

La souris permet de déplacer les tables ou de créer des relations (cliquer sur un champ de la table “ père ” puis faire

glisser sur le champ associé dans la table “ fils ”), de supprimer des tables ou des relations (menu supprimer) et d'ajouter

des tables (bouton table+).

Un double click sur la relation permet de

définir ses propriétés :

-Type (bouton type de jointure)

-Intégrité référentielle

-Mise à jour en cascade des champs liés

-Suppression en cascade des champs liées

Il existe 4 types de relations :

- relation 1 à 1 : Un enregistrement d'une table est en relation avec un seul enregistrement d'une autre table.

- relation 1 à ∞ : Un enregistrement d'une table est en relation avec plusieurs enregistrements d'une autre

table.

- relation ∞ à 1 : Plusieurs enregistrements sont en relation avec un seul enregistrement d'une autre table.

- relation ∞ à ∞ : Plusieurs enregistrements sont en relation avec plusieurs enregistrements d'une autre table.

Attention! Une relation ne peut être établie qu'à la condition que les champs liés soient du même type de données! Les

propriétés doivent également être identiques lorsque le type de données est numérique.

Page 20: _OK Le Logiciel ACCESS Par La Pratique

Access - page 20

Le nombre de séjours par

mois et par service par une

requête sélection.

La fonction Format permet

d’obtenir les mois en toute

lettre, grâce à l’argument

«mmmm».

Résultat de la requête sélection ->

Les analyses croisées permettent d’effectuer des groupements suivant 2 critères.

Une requête d’analyse croisée doit comporter dans la ligne Analyse au moins une fois Ligne, une fois

Colonne, une fois Valeur.

Exercice 5 : Les Formulaires, les macros et Visual Basic

8- Créer un formulaire permettant de saisir les patients. La zone de texte du NIP doit être verrouillée car le numéro estautomatique et ne doit pas être modifié.

9- Créer un formulaire permettant de saisir les demandes et contenant 3 sous-formulaires (affichage du patient, affichagedu séjour et affichage de l’examen. En outre, à la saisie du résultat, le champ Normalité doit se mettre à jourautomatiquement (normal, augmenté ou diminué) en fonction de la valeur du résultat.

10- Créer un formulaire « entree » qui s’affiche au démarrage et qui permet d’accéder à la saisie des patients ou desdemandes, et de quitter l’application (boutons macro).

11- Créer dans le formulaire « entree » une zone de liste comportant les nip, nom, prénom et date de naissance despatients. Lorsque l’on double-clique sur un patient, le formulaire saisie des patient doit s’ouvrir sur l’enregistrementdu patient (procédure Visual Basic).

Page 21: _OK Le Logiciel ACCESS Par La Pratique

Access - page 21

FORMULAIRES

Les formulaires sont des écrans qui permettent à l'utilisateur de visualiser ou de modifier des tables ou des requêtes ou de

déclencher des commandes particulières programmées.

Parmi les modes de création proposés :

Assistant formulaire : C'est le mode de création préconisé car il permet de créer un formulaire type contenant les champs

demandés par l'utilisateur, sous une des formes proposées par l'assistant.

Ensuite, il est toujours possible de modifier le formulaire (bouton modifier) de la même façon que dans le mode création

directe.

Mode création directe : Il permet la création directe d'un formulaire sans assistant avec ajout de contrôles (zone de texte,

étiquette, sous formulaires ...) de la même façon que dans Visual Basic. Pour cela il faut utiliser la boite à outils (menu

affichage -> boite à outils).

Pour créer un formulaire, utiliser l’onglet Formulaire -> Nouveau

Pour le formulaire Sais ie des patients , utiliser l’assistant formulaire.

A la création d'un nouveau formulaire, il faut tout d'abord définir la table ou la requête attachée au formulaire.

L’assistant propose ensuite un choix de présentation.

Les champs de la table sont créer dans le formulaire dans une zone de texte avec la propriété source contrôle = nom du

champ.

Le Mode création permet de modifier le formulaire.

Le Mode formulaire permet de l' utiliser.

Page 22: _OK Le Logiciel ACCESS Par La Pratique

Access - page 22

Les outils suivants permettent de modifier un

formulaire. Si la barre d’outils n’apparaît pas, utiliser la

commande Affichage/Barre outils.

Pour écrire du texte (étiquette) dans un formulaire : cliquer sur l’icône « texte » et cliquer dans le formulaire à l’endroit

où le texte doit apparaître et frapper celui-ci.

Créer des zones de texte : les zones de texte permettent d’écrire des formules. Pour définir une zone de texte, cliquer sur

l’icône « zone de texte » et écrire la formule.

Pour ajuster ce qui va être déplacé ou crée , choisir Format/Aligner sur la grille.

Pour ajuster tout ce qui a été déjà crée : Edition/Sélectionner tout, et Format/Ajuster à la grille

On peut également aligner verticalement ou horizontalement plusieurs contrôles.

Ordres de sa isies : l’ordre des champs à saisir (ex : 1->nom, 2->prénom, ...) se définit avec Affichage/Ordre de

tabulation. Sélectionner la ligne et faire glisser.

Démarrer un assistant contrôle

Insertion d'étiquette

Sélection d'objet

Insertion de champ texte

Insertion de bouton bascule

Insertion de case à cocher

Zone de liste modifiable

Insertion d'image

Cadre d'objet dépendant

Sous-formulaire / Sous-état

Groupe d'options

Bouton d'options

Zone de liste

Bouton de commande

Cadre d'objet indépendant

Rectangle

Insertion d'un saut de page

Trait

Page 23: _OK Le Logiciel ACCESS Par La Pratique

Access - page 23

Propriétés du formulaire : Pour faire apparaître les propriétés

du formulaire, cliquer en haut à gauche et sur l’icône

propriétés .

De même, les propriétés des différents contrôles sont

modifiables dans la fenêtre propriété (contenu, mise en

forme, etc ).

Ainsi, la propriété de la zone de texte du NIP a pour

propriété Activé : Non

Comme pour les tables, il est possible de définir pour les

zone de texte des masques de saisie, des formats, etc.

Lorsque le formulaire est terminé, l’utiliser en mode

Formulaire et saisir quelques patients.

SOUS FORMULAIRES

Les sous formulaires permettent d’effectuer des saisies multi-

enregistrements ou de visualiser tous les enregistrements enfants

d’un parent.

Pour le formulaire Sais ie des demandes d’examen ,

Il faut d’abord créer un formulaire affichage d’un patient.

Il permet la visualisation des patients (et non leur saisie) : Les

champs sont verrouillés et non activés. Il ne doit pas afficher le

selecteur, les barres de défilement, etc ... Ce formulaire (sous-

formulaire) sera intégré au formulaire affichage d’un séjour

pour afficher à l'écran les caractéristiques du patient sélectionné.

- Propriétés du formulaire : cf ci-contre ->

- Propriétés de DateNaissance, NIP, Nom, Prénom...

Activé: Non et Verrouillé: Oui

Page 24: _OK Le Logiciel ACCESS Par La Pratique

Access - page 24

Le formulaire affichage d’un séjour est créé selon les mêmes

principes. Il permet la visualisation des séjours (et non leur saisie) :

Les champs sont verrouillés et non activés. Ce formulaire sera intégré

au formulaire de saisie des demandes (sous-formulaire) pour afficher à

l'écran les caractéristiques du séjour sélectionné. Ses propriétés sont

semblables à celles des formulaires d'affichage avec en plus,

l'intégration du sous-formulaire "affichage d'un patient" par l’icône sous

formulaire de la boite à outil -> tracer cadre -> champ père : NIP et

champ fils NIP.

De même, création du formulaire affichage d’un examen. Il permet la visualisation des examens de laboratoire (et

non leur saisie) : Les champs sont verrouillés et non activés. Ce formulaire sera intégré au formulaire de saisie des

demandes (sous-formulaire) pour afficher à l'écran les caractéristiques de l'examen sélectionné. Ses propriétés sont

semblables à celles du formulaire "affichage d'un patient".

Formulaire Sais ie des demandes d’examen

Intégration des sous formulaires précédents :

- affichage d’un séjour (champ père : nosej et champ fils : nosej)

- affichage d’un examen (champ père : code examen et champ fils : code examen)

Le numéro de demande n'est pas activé car la numérotation est automatique.

La saisie du numéro d’examen est assistée par la proposition d’une liste contenant les libellés des examens. La saisie du

numéro de séjour est assistée par la proposition d’une liste contenant les nom, prénom et date de naissance des patients.

sous formulaire patient

Page 25: _OK Le Logiciel ACCESS Par La Pratique

Access - page 25

MACROS ET MODULES

Les macros et les modules permettent d'automatiser certaines actions.

Les macros contiennent une simple liste d'actions prédéfinis déclenchées séquentiellement. (C'est par exemple, ouvrir un

formulaire, exécuter une requête, etc ...)

Les modules permettent de créer des procédures ou des fonctions Visual Basic qui ne sont pas prédéfinis dans les menus

d'Access. Le vocabulaire de Visual Basic Access diffère légèrement du Visual Basic standard mais les principes de base

restent les mêmes (déclarations, conditions, boucles, ... ) -> cf module Visual Basic.

Dans le formulaire de saisie des examens demandés, la normalité est calculée automatiquement grâce à une procédure

Visual Basic déclenchée après mise à jour du champ résultat.

Page 26: _OK Le Logiciel ACCESS Par La Pratique

Access - page 26

Private Sub Résultat_AfterUpdate()Dim res, min, max As Doubleres = CDbl(Résultat)min = CDbl(Affichage_d_un_examen![Valeur mini])max = CDbl(Affichage_d_un_examen![Valeur maxi])If res = 0 ThenNormalité = "non calculée"ElseSelect Case resCase Is > maxNormalité = "augmentée"Case Is < minNormalité = "diminuée"Case ElseNormalité = "normale"End SelectEnd If

Formulaire de démarrage

Nouveau formulaire, mode création. Aucune table ou requête liée.

Attention ! Veillez à ce que l’icône « assistant » soit activé dans la boite à outil (assistance à la création des

boutons).

Créer les étiquettes et les boutons nécessaires (ouvertures formulaires, bouton quitter).

Le click sur les 3 petitspoints permet d’avoir accèsau module du formulaire etd’écrire la procédure demise à jour du champNormalité

Page 27: _OK Le Logiciel ACCESS Par La Pratique

Access - page 27

Exemple : Bouton Saisir patient : La macro est déclenchée lors

d’un click sur le bouton.

fenêtre propriété

fenêtre macro

Créer une zone de l iste patients : Elle doit comporter les nip, nom, prénom et date de naissance des patients.

Utiliser l’icône de la boîte à outil (Icône Assistant toujours activé ! !). Dans la fenêtre propriétés, onglet événement,

créer une procédure événementielle (généré code) :

Me![Liste] signifie valeur (donc nip de la ligne sélectionnée) de liste dans le formulaire en cours (Me).

Private Sub Liste_DblClick(Cancel As Integer)

Dim critere As String

critere = "[NIP]=" & Me![Liste]

DoCmd.OpenForm "Saisie des patients", , , critere

End Sub