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 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 en mode Ébauche. C'est ainsi que le formulaire ci-dessus a été créé en suivant les différentes étapes de l'Assistant.
La première étape consiste à choisir la source des données et les champs où une saisie est attendue. Dans cet exemple, comme illustré ci-dessous, il s'agit de la table Depenses et de tous ses champs.
Par la suite, il faut décider si on veut un sous-formulaire et, si c'est le cas, le définir. Lorsque la table retenue à la première étape est liée à une ou plusieurs autres tables, ces relations seront présentées comme sources possibles pour le sous-formulaire. Nous avons ainsi retenu pour le sous-formulaire la relation avec la table Resp_achat.
Après avoir choisi la table pour le sous-formulaire, il faut choisir quels champs de cette dernière retenir.
L'étape suivante consiste à décider du type de positionnement des différents contrôles pour la saisie dans le formulaire et dans le sous-formulaire.
L'Assistant nous propose ensuite différentes possibilités pour la saisie (par exemple, ne permettre que l'ajout de nouveaux enregistrements ou permettre la modification des enregistrements existants).
Nous avons par la suite à choisir un visuel parmi les modèles proposés.
Finalement, à la dernière étape, il faut nommer le formulaire ainsi que décider si on veut l'utiliser tout de suite pour faire de la saisie ou plutôt l'ouvrir dans l'éditeur de formulaire pour le peaufiner.
La copie d'écran ci-dessous illustre le formulaire de saisie dans l'éditeur de formulaireaprès avoir été peaufiné. 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.