Exploitation de la structuration : Formulaire de saisie
Un des processus à conceptualiser pour une base de données est la manière dont l'information y sera manipulée (saisie, modification, suppression). Dans certains environnements, il est possible de saisir directement les données dans la ou les tables de données, mais ce mode de saisie est habituellement réservé à la personne qui administre la base de données comme il présuppose une bonne connaissance du SGBD. Lorsque la saisie est du ressort d'autres personnes que l'administrateur ou l'administratrice de la base de données, il faut habituellement prévoir des formulaires de saisie pour ces dernières. Ces formulaires reprendront la structure de la base de données pour offrir un environnement facilitant la saisie des données.
Remarque :
En sus d'une saisie ponctuelle dans la base de données à partir d'un formulaire de saisie ou directement dans les tables de données, il est aussi possible dans la majorité des SGBD d'effectuer une saisie en lot, c'est-à-dire d'importer dans la base de données simultanément plusieurs enregistrements. C'est entre autres la technique utilisée lorsque l'on migre d'un SGBD à un autre. Ce type de saisie relève habituellement de la personne qui administre la base de données et n'implique pas l'utilisation d'un formulaire de saisie.
Formulaire de saisie dans DB/TextWorks (modèle textuel)
Dans DB/TextWorks, la saisie ne peut se faire directement dans la table de données; il faut ainsi passer par un ou même plusieurs formulaires de saisie. C'est lors de la conception de la base de données qu'il importe de bien comprendre qui sera en charge de la saisie afin de prévoir le ou les formulaires nécessaires pour procéder. Comme illustré ci-dessous, un formulaire de saisie présente les différents champs où une saisie potentielle est attendue. Chacune des boîtes de saisie dans cet exemple est précédée d'une étiquette (courte chaîne de texte descriptive) rappelant le nom du champ ainsi que la forme développée de ce dernier. De plus, ces étiquettes indiquent, par leur mise en forme, certaines caractéristiques des champs (caractère obligatoire et occurrences multiples). Finalement, la personne qui a conçu le formulaire de saisie a cru bon de rappeler le format attendu pour la saisie de la date.
L'objectif est de proposer des formulaires de saisie facilitant le travail et augmentant la qualité des données saisies. Bien que, lorsque le curseur est positionné dans une boîte de saisie, le SGBD rappelle certaines règles de saisie dans la barre d'état (ici Validation: required, single-only qui signifie que le champ RE est donc obligatoire et à occurrence simple), ce rappel demeure d'une part, un peu discret et, d'autre part, dans un vocabulaire qui n'est peut-être pas très explicite. Il a donc été décidé d'indiquer plus explicitement dans l'interface ces règles de saisie.
DB/TextWorks offre une seule manière de créer un formulaire de saisie, soit son éditeur de formulaire. Il est possible de débuter la conception d'un formulaire à partir d'un formulaire vide, comme on peut demander de débuter avec un canevas de base où tous les champs de la base de données sont inclus. L'édition consiste à inclure dans le formulaire les champs désirés, à modifier leurs étiquettes, à ajouter titre et sous-titre (s'il y a lieu) et à ajuster la mise en forme.
Formulaire de saisie dans Base (modèle relationnel)
Bien que l'on puisse dans Base saisir directement des données dans une table de données, ce n'est habituellement pas la manière de procéder qui est la plus facile pour une personne autre que l'administrateur de la base de données. Tout comme pour DB/TextWorks, Base permet ainsi de créer un ou plusieurs formulaires de saisie. Toutefois, du fait qu'une base de données dans le modèle relationnel peut avoir plus d'une table de données et que ces tables de données peuvent être reliées, les formulaires de saisie peuvent devenir plus complexes.
L'exemple ci-dessous est un formulaire qui permet de saisir les informations pour une dépense ainsi que, par un sous-formulaire, d'associer à cette dépense une ou plusieurs personnes responsables de cette dernière. Le formulaire permet de saisir des informations dans deux tables :
La table Depenses pour les informations sur les dépenses (c'est la table principale du formulaire)
La table Resp_achat pour le numéro de la ou des personnes responsables de l'achat (c'est la table du sous-formulaire)
De plus, afin de faciliter la saisie, les deux autres tables de la base de données sont exploitées :
La table Items est utilisée pour afficher les intitulés des items dans un menu déroulant pour faciliter la saisie.
La table Responsables est utilisée pour afficher la liste des noms dans un menu déroulant pour faciliter la saisie.
Base offre deux modes pour la création d'un formulaire de saisie : (1) l'Assistant Formulaire et (2) le mode Ébauche. Le premier mode propose différentes étapes pour préparer un formulaire de base qu'il est possible de modifier par la suite. Le deuxième mode ouvre l'éditeur de formulaire et propose un formulaire vierge. Il peut ainsi être intéressant de préparer un canevas de base avec l'Assistant Formulaire pour ensuite peaufiner le résultat. C'est ainsi que le formulaire ci-dessus a été créé en suivant les différentes étapes de l'Assistant.
En résumé, les différentes étapes proposées par l'Assistant Formulaire vous permettront de :
Choisir la source de données (table et champs) où l'information sera saisie;
Préciser si le formulaire comprendra un sous-formulaire et, le cas échéant, de définir la source du sous-formulaire (table et champs) et le lien de ce dernier avec le formulaire principal;
Choisir la configuration physique des différents contrôles (boîtes de saisie) du formulaire;
Préciser le type de saisie désirée (par exemple, uniquement l'ajout de nouveaux enregistrements ou aussi la modification des enregistrements existants);
Choisir un visuel parmi les modèles proposés.
La ressource qui suit illustre ce processus pour la création d'un formulaire de base pour la saisie des items et des dépenses liées. On y retrouvera donc : (1) les items comme formulaire principal et (2) les dépenses comme sous-formulaire lié au formulaire principal par le champ id_item (qui est la relation entre les deux tables).
L'Assistant Formulaire produit un formulaire de base qu'il est possible par la suite d'améliorer en éditant le formulaire créé. Du point de vue de la conception, le processus est similaire à celui présenté pour DB/TextWorks. Il s'agit de modifier le formulaire pour s'assurer de son efficacité à bien accompagner la personne responsable de la saisie dans son travail. On peut par exemple indiquer les champs obligatoires ou insérer des zones de liste pour proposer des menus déroulants. L'éditeur dans Base offre différentes possibilités dans les menus que l'on retrouve au pourtour du formulaire pour ajouter des contrôles ou des éléments visuels, ou pour modifier la mise en page. Lorsque l'on survole un bouton avec la souris, l'infobulle nous informe de son utilisation. De plus, il est possible de faire afficher la fenêtre des propriétés d'un contrôle par un clic-droit sur ce dernier pour modifier certaines de ses caractéristiques.
La ressource ci-dessous illustre quelques modifications du formulaire, notamment :
Le redimensionnement de certaines boîtes de saisie et la modification de leur étiquette
Truc : Les étiquettes et les boîtes de saisie associées sont regroupées. Pour facilement les modifier sans les dégrouper, vous trouverez dans leur menu contextuel l'option Entrer dans le groupe qui permet, après l'avoir sélectionné, de cliquer sur les éléments pour les modifier. Le redimensionnement se fait simplement avec la souris en bougeant les côtés d'un élément. La modification du texte d'une étiquette se fait en la double-cliquant pour accéder à sa fenêtre de propriétés (c'est l'option Étiquette qu'il faut modifier dans les propriétés).
L'ajout d'une zone de texte pour plus clairement identifier le sous-formulaire
Le masquage, dans le sous-formulaire, du champ id_item qui se retrouve aussi dans le formulaire principal (information redondante)
Le redimensionnement, dans le sous-formulaire, de la largeur de certaines colonnes
À la fin de la capsule vidéo, vous pourrez observer la saisie de données dans le formulaire. Portez attention notamment à l'utilisation des flèches dans le bas de l'écran qui permettent de naviguer soit entre les éléments du formulaire principal (items) ou ceux du sous-formulaire (dépenses). Elles s'adaptent en effet à la position de votre curseur : s'il est dans une des boîtes du formulaire principal, elles permettent de naviguer entre les éléments du formulaire principal. Cela peut se révéler parfois un peu mélangeant si on n'y porte pas attention! Le fait d'avoir utilisé le mode "feuille de données" pour la visualisation du sous-formulaire minimise cette désorientation.