Passer au contenu

Saisir des données

Pour entrer des données dans les tables et pour les modifier, récupérez le contenu d’une feuille de calcul, utilisez les formulaires et mettez plusieurs tables en relation.

Utilisez la grille

Pour saisir des données dans la table Chambres, il vous suffit, dans la fenêtre principale de Base, de double-cliquer sur cette table. La feuille de données (Table Data View) s’affiche sous forme d’un tableau. Chaque ligne correspond à un enregistrement, chaque colonne à un champ. Pour remplir les données telles que proposées dans l’étape 04 de la première partie, saisissez 12, puis appuyez sur la touche Tabulation pour passer au second champ. Tapez 75 et décochez l’option Baignoire. Validez par Entrée pour passer à la ligne suivante. Saisissez 21, Tabulation, 85 et laissez la case Baignoire cochée. Ajoutez sur le même modèle des données concernant d’autres chambres. Une erreur s’affiche si vous tentez d’indiquer deux fois le même Numero. Notez que, à la différence d’un tableur, les données sont automatiquement enregistrées au fur et à mesure de la saisie. Vous pouvez refermer la fenêtre.

Importez des données

Supposons que vous disposiez au préalable d’une feuille OpenOffice Calc ou Excel comportant la liste de vos clients. Pour importer les données dans la table Clients, lancez OpenOffice Calc, ouvrez votre feuille de calcul. OpenOffice Calc sait lire les fichiers Excel (versions 2003 ou précédentes), ainsi que les fichiers au format CSV ou TXT. Nous supposerons que le fichier Calc comporte au moins quatre colonnes : Nom, Prénom, Adresse et Téléphone. À l’aide de la souris, sélectionnez l’ensemble des données, y compris la première ligne contenant l’intitulé des colonnes (ne sélectionnez pas les 65536 lignes de la feuille de calcul en cliquant sur les en-têtes de colonnes). Copiez les données (Ctrl + C) dans le Presse-papier. Retournez à l’écran principal de Base et faites un clic droit dans la zone Tables sur Clients. Choisissez la commande Coller. L’assistant d’importation s’affiche.

Configurez l’importation

Cochez Ajouter des données et cliquez sur Suivant. Vous devez faire correspondre les champs de la Table Source (le tableau Calc) avec ceux de la Table cible (la table Clients). Tous les champs de la Table Source doivent être cochés. Dans la Table cible, les champs doivent être classés dans le même ordre que dans la Table source. Si ce n’est pas le cas, utilisez les boutons représentant des flèches vers le haut et vers le bas situées à droite de la fenêtre : cliquez par exemple sur Nom puis sur Flèche Haut afin de le faire remonter en première position. De même, remontez d’un cran Prenom, Adresse puis Telephone. Ainsi IDClient doit se trouver en dernière position. C’est indispensable puisque le numéro d’identifiant client n’est pas présent dans le fichier source. Validez en cliquant sur Créer. Les données sont immédiatement ajoutées à la table. Pour vous en assurer, double-cliquez sur Clients.

Créez un formulaire…

Pour faciliter l’entrée des données et ajouter des contrôles de saisie, Base vous propose de créer des formulaires. Ces derniers sont adaptables à chaque situation. Pour notre exemple, nous allons créer un formulaire permettant d’ajouter à la fois un client et une réservation. Depuis la fenêtre principale de Base, cliquez sur Formulaires puis Utiliser l’assistant de création de formulaire. Pour effectuer une réservation, il est nécessaire de commencer par remplir la table Clients. Dans la liste Table ou requêtes, choisissez donc Table : Clients. Cliquez sur le bouton >> afin de copier tous les champs de la zone Champs disponibles vers Champs du formulaire. Cliquez sur Suivant.

… puis un sous-formulaire…

Nous souhaitons également pouvoir saisir une ou plusieurs réservations de chambre. Pour cela, nous allons créer un sous-formulaire, qui sera lié automatiquement au formulaire principal. Ainsi, l’identifiant IDClient de la table Clients sera automatiquement reporté dans l’IDClient de la table Reservations. Cochez la case Ajouter un sous-formulaire, puis l’option Sous-formulaire basé sur la sélection manuelle des champs. Cliquez sur Suivant. Dans la première liste, sélectionnez la Table : Reservations puis cliquez sur >> afin d’inclure tous les champs disponibles dans le formulaire. Validez en cliquant sur Suivant.

… et reliez les deux

Dans la première liste correspondant aux champs du sous-formulaire, sélectionnez IDClient. Dans la seconde liste, correspondant aux champs du formulaire principal (Clients), sélectionnez également IDClient. Validez en cliquant sur Suivant. Il ne vous reste plus qu’à définir la présentation. Pour la disposition du formulaire principal, choisissez par exemple Colonnes-Etiquettes en haut (seconde icône). Pour la disposition du sous-formulaire, choisissez Comme grille (troisième icône). Si un client souhaite dormir plusieurs nuits dans la même chambre, il faudra créer autant d’entrées dans la table Reservations. Pour cette raison, la présentation sous forme de tableau est plus pratique car elle permet d’afficher simultanément plusieurs enregistrements. Cliquez ensuite sur Suivant : cochez l’option Le formulaire doit afficher toutes les données (et décochez toutes les autres cases). Choisissez enfin l’un des styles proposés dans la liste et cliquez sur Suivant. Le nom indiqué correspond au nom du formulaire et peut être laissé tel quel. Validez en cliquant sur Créer, le formulaire sera automatiquement ouvert en mode utilisation.

Ajoutez des données

Le formulaire permet à la fois de consulter les données existantes et d’en ajouter. En cliquant sur les icônes flèche gauche et flèche droite située en bas de l’écran, vous pouvez passer aux clients précédent ou suivant. Pour ajouter un nouveau client, cliquez sur l’icône Nouvel enregistrement. (un triangle avec une étoile jaune placé en bas de la fenêtre). Ne saisissez rien dans le champ IDClient mais remplissez tous les autres champs (Nom, Prenom, Adresse et Telephone). Pour ajouter une réservation, cliquez sur la première ligne vierge du tableau (vous constaterez que IDClient se remplit automatiquement, à la fois dans cette ligne mais également dans la zone située au dessus). Pour la colonne Nuit, saisissez une date (par exemple 15/10/10), tapez la touche Tabulation et saisissez le numéro de chambre (par exemple 21). Tapez deux fois sur Tabulation et saisissez le prix pratiqué (par exemple 80). Si vous souhaitez ajouter une seconde nuit, passez à la ligne suivante et procédez de même en saisissant, par exemple, 16/10/10, Tabulation, 21, Tabulation, Tabulation, 80. Les données sont automatiquement enregistrées dans la base de données. Refermez la fenêtre de formulaire en cliquant sur la croix en haut à droite afin de revenir à l’écran principal.

Améliorez la présentation

Nous avons vu que le champ IDClient se remplissait automatiquement. Afin d’éviter toute erreur de saisie, il est donc préférable d’interdire à l’utilisateur de modifier ce champ tout en le laissant visible au cas où cette information nous serait nécessaire. Pour cela, faites un clic droit sur le formulaire Clients et choisissez l’option Modifier. L’ébauche du formulaire apparaît alors en mode Modification. Cliquez sur le champ IDClient situé en haut. Vous constatez que deux éléments sont sélectionnés : le champ (en gris) et le texte IDClient situé juste au-dessus. Base a groupé automatiquement ces deux éléments. Pour les dissocier et pouvoir modifier les propriétés du champ, faites un clic droit sur ce champ-ci et choisissez la commande Groupe, Dissocier. Cliquez en dehors du champ puis à nouveau sur la zone de saisie pour la sélectionner. Double-cliquez sur le champ afin de faire apparaître les propriétés. Dans la zone Activé, choisissez l’option Non puis refermez la fenêtre de propriétés en cliquant sur la croix en haut à droite.

Vérifiez le formulaire

Pour tester le fonctionnement, cliquez sur l’icône (Des)Activer le mode de conception située dans la barre d’outils de gauche. Vous constaterez que l’identifiant apparaît désormais en grisé et qu’il n’est pas modifiable. Pour revenir au mode de conception, cliquez à nouveau sur la même icône. Les champs Nom, Prenom, Adresse et Telephone ne sont pas forcément situés dans le bon ordre. Pour bouger un champ dans le formulaire, il suffit d’effectuer à la souris un glisser-déplacer.

Améliorez la réservation

Dans le sous-formulaire, la colonne IDClient n’est d’aucune utilité ! Il est donc préférable de la masquer. Pour cela, cliquez à l’aide du bouton droit de la souris sur son en-tête et choisissez la commande Masquer la colonne. Par ailleurs, la saisie de la date sera plus simple si un calendrier s’affiche. Cliquez à l’aide du bouton droit de la souris sur Nuit et choisissez la commande Colonne. Les propriétés s’affichent. Pour la propriété Déroulante, choisissez Oui puis refermez la fenêtre. Vérifiez le résultat en désactivant le mode de conception. Cliquez sur la flèche située à droite de la date afin de faire apparaître un calendrier. Enfin, revenez au mode de conception.

Affichez la liste des chambres

Il est plus facile, lors de la saisie d’une réservation, de choisir la chambre dans une liste plutôt que de taper son numéro. Pour cela, faites un clic droit sur Numero et choisissez la commande Remplacer par, Zone combinée. Faites de nouveau un clic droit sur Numero et choisissez Colonne. Dans Etiquette, modifiez le libellé en Numéro de chambre afin que celui-ci soit plus clair. Activez l’onglet Données. Dans la liste Type du contenu de liste, sélectionnez Table. Dans Contenu de liste, sélectionnez Chambres. Refermez la fenêtre de propriétés et vérifiez à nouveau le formulaire.

Contrôlez la saisie des données

Si vous saisissez une donnée invalide, par exemple un numéro de chambre qui n’existe pas, un message d’alerte apparaît. En effet, rappelez-vous que vous avez donné l’attribut Saisie obligatoire aux champs de cette table. Vous pouvez encore plus finement contrôler les données. Ainsi, supposons que le prix effectif de la nuit doive être compris entre 30 euros et 300 euros. Pour définir ces limites, faites un clic droit sur Prix et choisissez la commande Colonne. Activez l’onglet Général. Dans Valeur min, saisissez 30. Dans Valeur max, saisissez 300. Enfin, cliquez sur le bouton situé à droite de Formatage. Dans Catégorie, sélectionnez Monétaire, cliquez sur ?1 234,57 euros et validez par OK. Enfin, refermez la fenêtre de propriétés et vérifiez le bon fonctionnement du formulaire. Vous constaterez, par exemple, que si vous saisissez une valeur inférieure à 30, celle-ci reçoit automatiquement la valeur 30.

Ajoutez des informations sur la chambre

Lorsque vous vérifiez des réservations, vous avez peut-être besoin d’afficher le tarif (standard) de la chambre. Pour cela, il suffit de créer un “ sous-sous-formulaire ” puisque le tarif qui s’affichera doit correspondre au Numero de la chambre affiché dans le sous-formulaire. Pour y parvenir, cliquez sur l’icône Navigateur de formulaires situé dans la boîte d’outils en bas. Cliquez à l’aide du bouton droit de la souris sur Subform et choisissez la commande Nouveau, Formulaire. Cliquez à l’aide du bouton droit sur Standard et affichez les Propriétés. Sélectionnez comme Contenu : Chambres. Cliquez sur le bouton situé à droite de Établir un lien depuis. Saisissez pour la liste Chambres : Numero. Procédez de même pour Reservations. Validez par OK puis refermez les propriétés. Cliquez sur l’icône Zone de texte (barre d’outils de gauche) et tracez un rectangle à droite du tableau. Ce champ accueillera le tarif de la chambre. Double-cliquez dedans afin d’en afficher les propriétés. Dans l’onglet Données, sélectionnez Champ de données : Tarif. Dans l’onglet Général, choisissez Activé : Non (afin que l’on ne puisse pas modifier le tarif dans le formulaire). Refermez la fenêtre de propriétés. Vous pouvez, sur le même principe, ajouter une Case à cocher correspondant au champ de données Baignoire. Désactivez le mode de création afin de vérifier le bon fonctionnement du formulaire : le tarif standard s’inscrit en regard de la chambre réservée.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Stéphane Darget