Copyright © 2021 Yves MARCOUX; dernière modification : 2021-10-01.

Formulaires de saisie dans Access

Yves MARCOUX - EBSI - Université de Montréal


Table des matières

Introduction

Particularité d’INFORM-R

Formulaire général

Formulaire pour AUTRocc

Formulaire pour DESCocc

Le formulaire général pour documents

Formulaire pour la saisie de monographies

Création de la requête monographies

Création du formulaire monographies

Exercice

Formulaire pour la saisie d’articles

Exercice


Introduction

Par le truchement de divers exercices, nous n’avons jusqu’ici qu’effleuré la saisie de données. Nous avons vu que l’on peut saisir des données directement dans une table en mode feuille de données. Nous avons aussi vu que l’on peut travailler sur une seule fiche à la fois à l’aide d’un formulaire créé automatiquement par Access sur demande.

Ces deux premières incursions dans la saisie ne travaillaient que sur les données d’une seule table à la fois. Notre troisième incursion permettait de travailler sur deux tables à la fois, en utilisant le mécanisme des sous-feuilles de données. Grâce à ce mécanisme, on peut travailler conjointement sur la table principale (documents) de notre BD et sur une seule des tables correspondant aux champs à occurrences multiples. Comme INFORM-R compte deux telles tables (AUTRocc et DESCocc), les sous-feuilles de données ne constituent pas une solution satisfaisante pour nous.

C’est en poussant un peu plus loin notre utilisation des formulaires d’Access que nous arriverons à une solution satisfaisante pour la saisie des données dans INFORM-R.

Notons que nous incluons dans « saisie de données » toute forme de mise à jour des informations dans la BD, notamment :


Particularité d’INFORM-R

La principale difficulté pour la saisie dans INFORM-R vient de ce qu’elle contient des documents de deux types bibliographiques (monographies et articles) ayant chacun ses champs obligatoires, facultatifs et interdits. Deux exemples : le champ TITP est obligatoire pour un article, mais interdit pour une monographie, COLC est facultatif pour une monographie mais interdit pour un article.

Si on utilise un unique formulaire, contenant tous les champs, pour la saisie de monographies et d’articles, la présence des champs interdits pour le document que l’est en train de saisir peut être source d’erreur. En effet, en fonction du type bibliographique que l’on inscrit dans le champ TYPE, il faut se rappeler quels sont les champs interdits pour ce type bibliographique et s’assurer de n’y rien inscrire. Cela constitue à la fois une charge cognitive pour la personne effectuant la saisie et un risque que des données soient saisies par distraction dans les champs interdits.

Ces problèmes liés à l’utilisation d’un formulaire unique se poseraient aussi avec un SGBD textuel. Ils sont liés à la particularité que nous venons de décrire et non au modèle relationnel.

Pour éviter ces problèmes, nous créerons deux formulaires de saisie différents, un pour chaque type bibliographique, et ne comprenant que les champs obligatoires ou facultatifs pour ce type bibliographique. Il n’y aura donc aucune possibilité de malencontreusement saisir de l’information dans un des champs interdits.

De façon à pouvoir aussi naviguer à travers tous les documents, quel que soit leur type bibliographique, nous créerons aussi un formulaire général, contenant tous les champs. Ce formulaire permettra la visualisation et la suppression de documents, mais ne permettra aucune des autres formes de saisie, lesquelles devront obligatoirement être faites avec l’un des deux formulaires « spécialisés », justement pour éviter les problèmes liés à un formulaire unique.

Nous aurons donc un total de trois formulaires.


Formulaire général

Nous commençons par le formulaire général, car il nous servira de base pour les formulaires spécialisés. Mais avant même de nous attaquer à ce formulaire, nous devons créer deux « petits » formulaires qui nous serviront à répliquer la fonctionnalité des sous-feuilles de données au sein du formulaire général. Un de ces petits formulaires servira à la saisie dans AUTRocc, l’autre servira à la saisie dans DESCocc.

Nous n’utiliserons jamais directement ces petits formulaires, mais les utiliserons seulement comme sous-formulaires du formulaire général. En contraste avec la limite d’une sous-feuille de données par table, il n’y a pas de limite sur le nombre de sous-formulaires par formulaire; nous pourrons donc intégrer la saisie dans AUTRocc et dans DESCocc au sein du formulaire général.

Formulaire pour AUTRocc

Au sein du Volet de navigation, sélectionnez la table AUTRocc, puis faites Créer au menu principal et cliquez sur le bouton Formulaire du ruban. L’item Conception de la mise en page du formulaire s’ajoute au menu principal et le ruban correspondant s’affiche.

Au sein de ce ruban, faites Affichage → Mode création. Le panneau Feuille de propriétés s’ouvre en partie droite de l’écran.

Sélectionnez Formulaire dans la boîte de sélection au haut de la Feuille de propriétés, puis procédez aux réglages surlignés ci-dessous :

formulaires-saisie-1.png

Passez ensuite en mode Feuille de données en cliquant sur l’icône correspondante (la grille) au bas de l’écran à droite :

formulaires-saisie-2.png

L’affichage passera en mode Feuille de données (comme si on visualisait directement la table), avec un affichage comme celui-ci :

formulaires-saisie-3.png

Sur la ligne d’entêtes, faites Clic-droit sur le nom du champ NO, puis sélectionnez Masquer les champs. Refaites la même chose avec noDoc. Vous vous retrouverez avec une ligne d’entêtes ne contenant qu’un seul champ :

formulaires-saisie-4.png

Fermez maintenant l’onglet du formulaire (AUTRocc); confirmez la sauvegarde et acceptez le nom proposé pour le formulaire :

formulaires-saisie-5.png

Formulaire pour DESCocc

En procédant de la même façon que pour AUTRocc, créez un formulaire appelé DESCocc pour la table du même nom.

Le formulaire général pour documents

Nous sommes maintenant prêt à créer le formulaire général comme tel.

Tout d’abord, dans le Volet de navigation, faites Clic-droit sur la table documents, puis sélectionnez Mode création. Le panneau Feuille de propriétés s’ouvre en partie droite de l’écran.

Au sein de la Feuille de propriétés, assurez-vous que le paramètre Sous-feuille de données nom est réglé à [Aucune], puis fermez l’onglet de table documents. Si nécessaire, confirmez l’enregistrement des modifications apportées à la structure de la table « documents ».

Ensuite, au sein du Volet de navigation, sélectionnez la table documents, puis faites Créer au menu principal et cliquez sur le bouton Formulaire du ruban. L’item Conception de la mise en page du formulaire s’ajoute au menu principal et le ruban correspondant s’affiche.

Au sein de ce ruban, faites Affichage → Mode création. Le panneau Feuille de propriétés s’ouvre en partie droite de l’écran; de plus, le formulaire lui-même s’affichera dans un onglet de formulaire nommé documents :

formulaires-saisie-6.png

Dans cet onglet, il est possible de redimensionner et de déplacer chacun des champs du formulaire.

La conception de formulaires est une démarche très visuelle. Ce que nous proposons comme configuration visuelle du formulaire n’est qu’une des nombreuses possibilités. Comme le nombre d’étapes est grand, la succession d’actions à poser est décrite dans une vidéo plutôt que par captures d’écran. La vidéo peut être consultée ici.

Voici de quoi aura l’air le formulaire après les actions décrites dans la vidéo :

formulaires-saisie-7.png

Complétez le paramétrage du formulaire en effectuant les réglages suivants dans le panneau Feuille de propriétés en partie droite de l’écran :

formulaires-saisie-8.png

En préparation d’une impression éventuelle des fiches (en PDF ou papier), cliquez sur la barre Détail dans le formulaire :

formulaires-saisie-7a.png

puis faites les réglages suivants au sein de la Feuille de propriétés :

formulaires-saisie-7b.png

Fermez enfin l’onglet du formulaire (documents) et confirmez la sauvegarde.

À moins que vous n’ayez entré des données « à la main » directement dans les tables, celles-ci sont encore vides. Le formulaire documents n’est donc d’aucune utilité à ce stade-ci, puisqu’il ne sert qu’à la navigation dans les documents déjà saisis, et ne permet pas la saisie de nouveaux documents.

La saisie de nouveaux documents sera possible grâce aux deux formulaires que nous développerons au cours des sections suivantes.


Formulaire pour la saisie de monographies

Le formulaire que nous créerons maintenant sera spécialisé pour les monographies. On l’utilisera principalement pour effectuer la saisie de nouvelles monographies, mais aussi pour naviguer à travers les monographies de la BD et éventuellement y apporter des modifications. La suppression de monographies sera également possible avec ce formulaire.

Comme le formulaire ne doit travailler que sur les monographies, il devra être basé sur une requête qui n’extrait que les monographies de la table documents. Nous commençons donc par créer cette requête.

Création de la requête monographies

Faites Créer au menu principal puis cliquez sur « Création de requête » dans le bandeau qui s’ouvre.

Dans le panneau « Ajouter des tables », double-cliquez sur la table documents; cette dernière apparaîtra sous le nom de l’onglet « Requête1 » :

de-textuel-a-relationnel-37.png

Au sein de la table qui vient d’apparaître, double-cliquez sur le champ TYPE; ce champ apparaîtra dans la partie inférieure gauche de l’onglet :

de-textuel-a-relationnel-38.png

Décochez la boîte « Afficher » et comme « Critères », inscrivez "M" :

de-textuel-a-relationnel-39.png

Maintenant, sur la ligne Champ, à côté de TYPE, sélectionnez documents.*; la boîte « Afficher » correspondante sera automatiquement cochée :

formulaires-saisie-9.png

C’est tout, la requête est complète ! Pour la sauvegarder, fermez simplement l’onglet « Requête1 » :

de-textuel-a-relationnel-45.png

Acceptez l’invitation de sauvegarde, en spécifiant monographies comme nom de requête.

Création du formulaire monographies

Tel qu’indiqué précédemment, le formulaire documents nous servira de base pour les formulaires spécialisés, notamment celui spécialisé pour les monographies. Nous allons donc commencer par copier le formulaire documents sous le nom monographies, puis apporterons les modifications nécessaires à cette copie.

Pour faire la copie, il suffit de faire un clic-droit sur le formulaire documents dans le Volet de navigation, puis de sélectionner Copier :

formulaires-saisie-10.png

Ensuite, refaites clic-droit n’importe où dans le Volet de navigation, puis choisissez cette fois Coller :

formulaires-saisie-11.png

Access demandera le nom à donner à la copie du formulaire :

formulaires-saisie-12.png

à quoi vous répondrez :

formulaires-saisie-13.png

que vous confirmerez en cliquant OK. Vous verrez le formulaire monographies apparaître dans la section Formulaires du Volet de navigation.

En ce moment, le contenu du formulaire monographies est identique à celui du formulaire documents. Nous allons y apporter les modifications nécessaires pour le spécialiser dans les monographies.

Nous allons d’abord ouvrir le formulaire en Mode création, en faisant clic-droit dessus dans le Volet de navigation, puis en sélectionnant Mode création :

formulaires-saisie-14.png

Faites Conception de formulaires → Feuille de propriétés pour faire apparaître la Feuille de propriété du formulaire, au sein de laquelle vous effectuerez le paramétrage suivant :

formulaires-saisie-15.png

Il faut maintenant retirer du formulaire les champs non pertinents (c’est-à-dire interdits) pour une monographie. Pour retirer un champ, il suffit de cliquer dessus (ce qui le sélectionne) et d’appuyer sur la touche Suppr. (ou Del).

En fait, il n’y a qu’un champ à éliminer. Il s’agit de TITP, que l’on peut sélectionner (clic dessus) :

formulaires-saisie-16.png

puis supprimer (touche Suppr.) :

formulaires-saisie-17.png

Nous allons aussi désactiver trois des champs restants, puisque l’utilisateur n’a jamais à y inscrire quoi que ce soit. Ces trois champs sont TYPE, NO et DACR. On peut les sélectionner tous les trois en cliquant d’abord sur un premier, puis en faisant Ctrl-clic successivement sur les deux autres. Voici le résultat lorsque les trois champs sont sélectionnés :

formulaires-saisie-18.png

Pendant que les trois champs sont sélectionnés, effectuez le paramétrage suivant dans la Feuille de propriétés :

formulaires-saisie-19.png

Il ne nous reste maintenant qu’à paramétrer le champ TYPE pour qu’il n’accepte que la valeur M à la création de nouvelles fiches. Assurez-vous d’abord que seul ce champ est sélectionné :

formulaires-saisie-20.png

puis effectuez le paramétrage suivant dans la Feuille de propriétés :

formulaires-saisie-21.png

Les modifications au formulaire monographies sont terminées. Fermons l’onglet de formulaire du même nom et confirmons-en la sauvegarde.

Exercice

Maintenant que vous disposez d’un formulaire permettant de saisir des monographies, utilisez-le pour en saisir quelques-unes. Amusez-vous avec des données fictives, faites varier le nombre d’auteurs et de descripteurs par document. Expérimentez aussi avec la suppression de document : Accueil au menu principal → Section Enregistrements du bandeau → item Supprimer → Supprimer l’enregistrement.


Formulaire pour la saisie d’articles

En procédant de façon analogue à ce que nous avons fait pour le formulaire monographies, créez un formulaire spécialisé pour les articles, que vous appellerez articles. Il faudra d’abord créer une requête articles pour n’extraire que les articles de la table documents.

Les champs à retirer du formulaire seront cette fois TOED, COLC, EDIT et COTE. Ce sont les champs interdits pour un article.

Exercice

Utilisez maintenant votre nouveau formulaire articles pour expérimenter avec toutes les formes de saisie d’articles, incluant la suppression de document.

Pour référence, une BD avec les trois formulaires décrits dans ce texte et des données saisies est disponible ici.