1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 5 Support de cours rédigé par Bernard COFFIN Université.

Slides:



Advertisements
Présentations similaires
CONCEPTION DES BASES DE DONNÉES: modèle entités-associations
Advertisements

Vocabulaire pour la passage du modèle conceptuel des données au modèle relationnel des données. MCDMRD EntitéTable PropriétésChamps, attribut IdentifiantClé
Initiation aux bases de données et à la programmation événementielle
Cours n°3 Les formulaires
1 Initiation aux bases de données et à la programmation événementielle Cours N°9 : Gestion de la cohérence avec des sous-formulaires. Support de cours.
Publispostage Menu Outils / Lettres et publipostage
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation MS Access 2010 Structures – Tables, schémas et Données
Comprendre le SGBDR Microsoft Access – partie 2
1 Initiation aux bases de données et à la programmation événementielle Cours N°8 : Gestion de la cohérence avec des zones de liste déroulantes. Souheib.
Mieux comprendre son ENT e-lyco et savoir s’en servir Collège Saint-Joseph Ernée.
RÉNOVATION BTS Comptabilité et Gestion 2015 Atelier situations professionnelles & PGI Cas Jupiter Média Chantal Bricard Jean-Marie Duplan.
: le tutoriel d’autoformation à la recherche documentaire en Santé Je gère ma bibliographie  Je rédige ma bibliographie : le tutoriel.
Leçon 3: Utiliser les options et enregistrer l’affichage.
Cours de Mme Dominique Meganck - ICC - IFC MICROSOFT ACCESS Un système de gestion de bases de données...
1 TECHNOLOGIE EN SEGPA Objets techniques instrumentés, didactisés et maquettisés que préconisent les nouveaux programmes Stage 10SEGDES2 du 14 et 15 décembre.
1) Qu’est-ce que BCDI? BCDI est un logiciel informatique de recherche documentaire : C’est le catalogue informatique du CDI. Au collège on travaille principalement.
Motiver les élèves avec des échéanciers automatisés et personnalisés AQIFGA 2015 Cette présentation de David Larochelle est mise à disposition sous licence.
Mediator 9 - Un outil de développement multimédia 3AC Techno/Informatique.
« NET-COTISATIONS CDG 35 » Guide d’utilisation. Accès à la déclaration Accéder au site de déclaration des cotisations dans votre espace collectivité à.
Développement d’application avec base de données Semaine 3 : Modifications avec Entité Framework Automne 2015.
SFA - 44 rue Pasquier PARIS - ORGANISER DES MANIFESTATIONS SCIENTIFIQUES A LA SFA En amont consulter l’annexe 2 du Règlement intérieur.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 10 Support de cours rédigé par Bernard COFFIN Université.
BTN4U Gérer vos réservations du bout des doigts. BTN4U Gérer les réservations du bout des doigts Consultable toujours et partout Possibilité de multi-tâches.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 12 Support de cours rédigé par Bernard COFFIN Université.
1 Les bases de données Séance 7 Les fonctions avancées : Opérateurs ensemblistes, Sous-requêtes et transactions.
Introduction à la programmation
Informations et Astuces STEP 1. STEP est une application professionnelle pour la gestion des thèses en préparation Les thèses en préparation sont rendues.
INSTITUT UNIVERSITAIRE DE TECHNOLOGIE -B.P.2235 – Avenue Aristide Briand – Montluçon Cedex Tél – Fax –
Le réseau web enit.org … Depuis 2003, l’Anienit - Association Nationale des Ingénieurs ENIT – à mis sur pied et finance un serveur web indépendant de l’école.
Chapitre 4 Gestion des disques Module S41. Plan du cours 1. Utilisation de l'outil Gestion des disques 2. Utilisation des disques de base 3. Utilisation.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 11 Support de cours rédigé par Bernard COFFIN Université.
Chapitre 6 Gestion et analyse du système DNS Module S43 1.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 1 Support de cours rédigé par Bernard COFFIN Université.
Résolutions et réponses Epreuve n° 4 – CM2 Résolutions et réponses Epreuve n° 4 – CM2 RALLYE MATH 92 2 ème Édition RALLYE MATH 92 2 ème Édition.
E-lyco Un réseau d’ENT au service de la pédagogie, du travail collaboratif et de la communication.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 6 Support de cours rédigé par Bernard COFFIN Université.
FACTORY systemes Module 5 Page 5-1 Les outils clients Wonderware FORMATION InSQL 7.0.
Initiation aux bases de données et à la programmation événementielle Outil de création des tables Support de TD rédigé par Bernard COFFIN Université Paris.
La création des données d’exemplaire pour un exemplarisateur Sudoc.
GUIDE UTILISATEUR POUR LA CONSULTATION D’AMAC PST / Février 2016 APPLICATION POUR LA MAITRISE DES AGENTS CHIMIQUES.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
RÉNOVATION BTS Comptabilité et Gestion 2015 CB2C : un exemple de situation professionnelle Christine Forest Stéphane Bessière Daniel Perrin Toinin.
Du panier à la commande client Créer un panier Identification Validation de la commande Paiement Formulaire de création de compte Etats de la commande.
1 Les groupements d’échangeurs thermiques, illustration de systèmes énergétiques, introduction aux systèmes complexes. Comprendre.
Introduction à la Programmation Orientée Objet H.GATI.
1 Master Data Management au SANDRE Les stations de mesure.
La création des données d’exemplaire pour un responsable de Centre Régional.
Formation à l’utilisation de K-Sup V5 février 2009 CRISI - COM.
Les bases de données CINAHL
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 9 Support de cours rédigé par Bernard COFFIN Université.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 8 Support de cours rédigé par Bernard COFFIN Université.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 7 Support de cours rédigé par Bernard COFFIN Université.
Master sciences et techniques de géomatique environnementale
Leçon 2: Consulter les statistiques. Connectez-vous à Webstats Utilisez un login et le mot de passe de l’application concernée pour vous connecter à Webstats.
L'objectif permettre aux utilisateurs d'acquérir ou d'actualiser des compétences directement utilisables dans leur travail. KARA CHEIKH Cite.
INTERFACE DE CONNEXION : R/ R/ Pour utiliser Colodus, identifiant et mot de passe sont obligatoires Votre.
FORMATIONENT/SVT Saint Orens Vendredi 15 novembre 2013.
Les fonctions et les regroupements B.T.S. S.I.O – SI3 – 1.
INSCRIPTIONS SPORTIVES
1 Initiation aux bases de données et à la programmation événementielle Construction d’un état Support de TD rédigé par Bernard COFFIN Université Paris.
RÉSERVER AVEC ADOC Mode d’emploi 1 Page 1 : Page de garde. Pages 2, 3, 4 et 5 : Mode d’emploi. Page 6 : Rubriques supplémentaires – Règlement. Défilement.
Un projet pour tous, un engagement pour chacun Cette épreuve de « compte est bon » permet à tous les élèves, quel que soit leur compétence, de participer.
09/03/09 - Page 1 Département Office Département des constructions et des technologies de l'information Département de l'instruction publique SIGEF Présentation.
Initiation aux bases de données et à la programmation événementielle
Les Bases de données Définition Architecture d’un SGBD
Initiation aux bases de données et à la programmation événementielle
03- Evaluation Access 2003 Cette évaluation comporte des QCM (1 seule réponse) et des Zones à déterminer dans des copies d’écran.
Transcription de la présentation:

1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 5 Support de cours rédigé par Bernard COFFIN Université Paris 10 – Nanterre 2007/2008

2 un lien logique établit que des enregistrements de deux relations sont complémentaires à un enregistrement de la première table, on associe n (plusieurs) enregistrements de la seconde, alors qu’à un enregistrement de la seconde on n’associe qu’un seul enregistrement de la première le lien doit être réalisé à l’aide de la clef primaire de la table père et d’une clef externe de la table fils Rappels (Cf. cours N° 2) : – on parle d’un lien père / fils Lien logique

3 Si elle existe (n’est pas Null), la valeur de la clef externe de la table fils doit toujours être égale à la valeur de la clef primaire d’un enregistrement existant de la table père Le type de la clef externe de la table fils doit être exactement le même que celui de la clef primaire de la table père Rappel : La clef primaire est un champ qui ne peut pas prendre la même valeur pour deux enregistrements différents de la table Le plus simple est de laisser à ACCESS le soin de gérer ses valeurs en la déclarant « NuméroAuto » La clef externe ne peut être non renseignée (Null) que dans des cas rares et très précis de traitements

4 Autoriser que la valeur de la clef externe (table fils) ne soit pas renseignée (Null) signifie que le champ « père » est créé après les champs « fils » ou bien que le lien décrit une information qui apparaît après la création des enregistrements père et fils

5 Exemple 1 : Le champ père sert à définir un point commun (entre les fils) qui apparaît après leur création dans une table on décrit des commandes dans une deuxième table, on décrit des livraisons supposons qu’une livraison puisse concerner plusieurs commandes alors la table Livraison va être la table père et la table Commande sera la table fils la clef externe de la table Commande ne doit pas être renseignée (Null) au moment de la création de l’enregistrement (une commande) elle sera mise à jour lors de la création de la livraison (concernant n commandes)

6 Exemple2 : Le lien décrit un événement qui n’apparaît qu’après la création du père et du fils dans une table on décrit des œuvres d’art dans une deuxième table, on décrit des collectionneurs un collectionneur peut posséder plusieurs œuvres, mais elles n’ont qu’un propriétaire la table tabCollectionneur est la table père et la table tabOeuvre est la table fils la clef externe de la table tabŒuvre ne doit pas être renseignée (Null) au moment de la création de l’enregistrement (réalisation de l’œuvre) : elle sera mise à jour au moment de la vente de l’œuvre

7 En dehors de cas particuliers comme ceux-là, la clef externe de chaque enregistrement de la table fils doit toujours être renseignée et égale à la clef primaire d’un enregistrement existant de la table père Si la valeur d’une clef externe d’un enregistrement est renseignée mais n’est pas égale à la clef primaire d’un enregistrement existant, alors la base de données est INCOHÉRENTE !

8 1.Ne pas attribuer à une clef externe une valeur sans être certain qu’elle est égale à la clef primaire d’un enregistrement existant 2.Ne pas supprimer un enregistrement de la table père tant qu’il est lié à au moins enregistrement de la table fils 3.On ne modifie pas la valeur d’une clef primaire ! Garantir la cohérence de la BD

9 L’outil « relations » d’ACCESS ACCESS propose un outil nommé « relations »… mais il ne s’agit pas de relations au sens de l’algèbre relationnelle ! Permet de définir des jointures par défaut (utilisées avec l’assistant de construction de requête – hors programme de ce cours, rappelons le) Permet d’imposer des « contraintes d’intégrité » à ces relations par défaut

10 L’outil « relations » d’ACCESS L’ergonomie des traitements (d’erreurs) est souvent médiocre Ne pas utiliser cet outil qui n’est pas au programme du cours… et de l’examen ! Il faut prévoir les traitements nécessaires au maintien de la cohérence de la base

11 Gestion de la cohérence par l’application Trois possibilités à choisir en fonction de critères ergonomiques 1.Saisir la valeur de la clef externe, puis vérifier qu’elle correspond bien à la clef primaire d’un enregistrement existant Utilisation d’un sous-formulaire indépendant pour afficher l’enregistrement père

12 Gestion de la cohérence par l’application 2.Utiliser un objet complexe lié aux deux tables ; les enregistrements créés sont alors forcément cohérents lors de la création (mais on est ramené au problème précédent en cas de modification par une autre interface) Utilisation d’un Sous-formulaire lié à la table fils (le formulaire principal étant, lui, lié à la table père)

13 Gestion de la cohérence par l’application 3.Plutôt que de saisir la clef externe, se rattacher à un enregistrement choisi parmi ceux qui existent dans la base Utilisation dans un formulaire lié à la table fils d’une Zone de liste déroulante permettant d’afficher les enregistrements pères possibles et de sélectionner le bon

14 La zone de liste déroulante Appelée aussi zone de liste modifiable Un contrôle des formulaires Objet lié à un ensemble de valeurs complexes Nous utiliserons toujours les enregistrements d’une relation définie par une requête La zone de liste déroulante permet de sélectionner un des enregistrements (de la relation liée) parmi les autres

15 La zone de liste déroulante Principales propriétés Valeur / Value dépend de l’enregistrement sélectionné peut être modifiée par VBA ; dans ce cas l’enregistrement sélectionné (affiché) est mis à jour automatiquement

16 La zone de liste déroulante Principales propriétés Contrôle source / ControlSource la valeur du champ lié est égale à la valeur de la zone de liste déroulante on utilise la zone de liste déroulante pour gérer la valeur de la clef externe

17 La zone de liste déroulante Principales propriétés Contenu / RowSource (row = rangée) pour nous, uniquement une relation décrite par une requête sélection calculée lors du chargement du formulaire recalculée par programmation à l’aide de la méthode Requery de l’objet Attention : ne pas confondre les propriétés contenu et valeur de la zone de liste !

18 La zone de liste déroulante Principales propriétés Colonne liée / BoundColumn colonne = champ ! les champs de la requête sont numérotés à partir de la gauche en commençant à 1 la valeur de zone de liste déroulante est égale à la valeur du champ repéré par la propriété « colonne liée »

19 La zone de liste déroulante Principales propriétés Colonne liée / BoundColumn si la valeur de la propriété « colonne liée » est égale à zéro, alors la valeur de la zone de liste est égale au numéro d’ordre de l’enregistrement sélectionné dans la relation (les enregistrements sont numérotés à partir de zéro)

20 La zone de liste déroulante Principales propriétés Nbre colonnes / ColumnCount nombre de champs affichables dans la zone de liste déroulante (le plus souvent c’est le nombre de champs de la relation décrite par la requête)

21 La zone de liste déroulante Principales propriétés Largeurs colonnes / ColumnWidths donne la largeur de l’affichage de chacun des champs (de gauche à droite dans l’ordre de la requête) si la largeur d’un champ est zéro cm, alors la valeur du champ n’est pas affichée (mais elle est disponible quand même !) pendant la sélection, tous les champs affichables sont visibles sinon, seul le premier champ affichable (largeur >0) est visible

22 Un contenu classé La zone de liste déroulante permet de sélectionner un des enregistrements (de la relation liée) parmi les autres Pour que la recherche de l’enregistrement désiré soit efficace, il faut trier les enregistrements de la relation Utiliser la clause Order By Il suffit de taper les premiers caractères de la valeur cherchée pour se déplacer dans le jeu d’enregistrements ; on termine la recherche en visualisant les enregistrements voisins

23 Exemple d’utilisation : formulaire de saisie d’un enregistrement d’une table « fils » Table « père » : tabFormation Champs [N° formation] – NuméroAuto ; clef primaire [Nom formation] – Texte de 50 caractères [Niveau] – Entier Long – {1, 2, 3} pour une licence {1, 2} pour un master

24 Exemple d’utilisation : formulaire de saisie d’un enregistrement d’une table « fils » Table « fils » : tabEtudiant Champs [N° étudiant] – NuméroAuto, clef primaire [Nom] – Texte de 50 caractères [Prénom] – Texte de 50 caractères [Formation suivie] – Entier Long ; clef externe Source du formulaire de saisie d’un étudiant : Select * From tabEtudiant;

25 Zones de textes liées aux champs [Nom] et [Prénom] Zone de liste déroulante zlChoix_Formation Il faut gérer le lien avec la table « père » ; donc le contrôle lié doit être la clef externe Formation suivie Il faut pouvoir sélectionner un enregistrement de la table « père », donc : Select [N° formation], [Nom formation], Niveau From tabFormation Order BY [Nom formation], Niveau; Numéro d’ordre du champ qui donne la valeur de la zone de liste soit : [N° Formation]

26 Remplacer la valeur par défaut (1) par le nombre de champs de la requête (contenu) 3 Le premier champ [N° Formation] ne doit pas être affiché ; sa largeur est 0cm Le deuxième champ [Nom formation] est affiché en permanence sur 5cm Le troisième champ [Niveau] est affiché seulement pendant la sélection sur 2cm 0cm; 5cm; 2cm

27

28 Si on veut que le nom et le niveau de la formation soient affichés en permanence, alors il faut modifier la requête qui décrit le « contenu » de la zone de liste en utilisant un champ calculé Select [N° Formation], [Nom formation] & " / " & Niveau From tabFormation Order By [Nom formation], Niveau; Pour une meilleure présentation en mode sélection, modifier aussi les propriétés « Nbre colonnes » et « Largeurs colonnes »