Outils pour utilisateurs

Outils du site


issue68:tutoriel_-_libreoffice

1

Base Input Forms So far in our series on LibreOffice Base, we have planned the layout for our database, created the tables, and created the relationships between those tables. Now, we need to think about how we will input the data into our tables and link them all together. You can edit the tables manually in the tables section of the program, but the best way is through input forms. We will create three forms: Authors, Media, and Books. We will handle the forms for authors and media first as they are the easiest. The form for books will bring everything together in one place.

Formulaires de saisie de Base

Jusqu'à présent, dans notre série sur Base de LibreOffice, nous avons conçu la mise en pages de notre base de données, créé les tables et les relations entre celles-ci. Maintenant, nous devons penser à la façon dont nous allons saisir les données dans les tables et les relier ensemble. Vous pouvez modifier les tables manuellement dans la section des tableaux du programme, mais la meilleure façon est à travers des formulaires de saisie. Nous allons créer trois formulaires : Auteurs, Médias et Livres. Puisqu'ils sont les plus faciles, nous traiterons d'abord les formulaires pour les auteurs et les médias. Le formulaire pour les livres réunira le tout dans un seul et même endroit.

Create the Authors and Media Forms Select forms from the Database pane on the left. You can create forms in two ways, through the wizard or through the Design View. We will use the wizard for Authors and Media. Click on Create from wizard… in the tasks pane. This starts the wizard. On the first step of the wizard, select the Authors table from the dropdown, and move Name to the Fields to use. This is done by selecting the field and using the arrow keys. Click Next. The second step deals with subforms, which we do not need for the Authors form. Click Next. You will notice that steps three and four are skipped. Those steps deal with setting up a subform. We will not use them in the our implementation of our database. Step five asks us for a layout for our fields. Since we have only one field, we will choose the table layout. Select the table layout and click Next. The sixth step is about how the form is used. We want the form to display all data, so select all data and click Next. Step seven deals with the styles of the form. You can select different background layouts for your form. You can also select whether your controls are displayed with no border, 3D borders, or flat. Click Next. On the eighth step, we give the form a name, Authors, and choose whether we want to edit it more or use it. After naming the form, click Finish. The new form will pop up on your screen. Close it and save your work. The Media form is created in the same way, only using the Media table instead of the Author table.

Créer les formulaires Auteurs et Médias

Cliquez sur Formulaires dans le volet Base de données sur la gauche. Vous pouvez créer des formulaires de deux manières : par le biais de l'assistant ou par le mode Création. Nous allons utiliser l'assistant pour les auteurs et les médias. Cliquez sur Utiliser l'assistant pour créer un formulaire… dans le volet des tâches. Cela démarre l'assistant.

À la première étape de l'assistant, sélectionnez la table Auteurs dans la liste déroulante, puis déplacez Nom vers les Champs du formulaire. Ceci se fait en sélectionnant le champ et en utilisant les touches fléchées. Cliquez sur Suivant.

La deuxième étape concerne les sous-formulaires dont nous n'avons pas besoin dans le formulaire Auteurs. Cliquez sur Suivant. Vous remarquerez que les étapes trois et quatre sont ignorées. Ces étapes concernent les sous-formulaires. Nous ne les utiliserons pas dans la mise en œuvre de notre base de données.

La cinquième étape nous demande une mise en page de nos champs. Comme nous n'avons qu'un seul champ, nous allons choisir la disposition en table. Sélectionnez la forme de table (Comme feuille de données) et cliquez sur Suivant.

La sixième étape concerne l'utilisation du formulaire. Nous voulons que le formulaire affiche toutes les données, donc sélectionnez toutes les données et cliquez sur Suivant.

L'étape sept concerne les styles du formulaire. Vous pouvez sélectionner différentes configurations d'arrière-plan pour votre formulaire. Vous pouvez également choisir si vos boutons sont affichés sans bordure, avec des bordures en 3D, ou à plat. Cliquez sur Suivant.

A la huitième étape, nous donnons un nom au formulaire, Auteurs, et choisissons si nous voulons le modifier encore ou bien l'utiliser. Après avoir nommé le formulaire, cliquez sur Terminer. Le nouveau formulaire apparaîtra sur votre écran. Fermez-le et enregistrez votre travail.

Le formulaire Médias est créé de la même manière, en utilisant uniquement la table Médias, et le champ Type, au lieu de la table Auteurs.

Create the Books Form Although we will use the wizard to start our Books form, we will need to edit it afterwards to add the connections to authors and media. Go through the wizard again with the Books table, adding the fields Title and Published. You will skip the subforms again. We will add our subforms manually. For the layout, use either Columnar – Labels on Top, or Columnar – Labels Left. I used Columnar – Labels on top. After naming the form Books in step eight, select Modify the form, and click Finish. This time the form is opened for editing. We will add two subforms to make a connection to the Authors and Media tables. On the toolbar at the bottom of the form, select the Form Navigator. This opens a small dialog containing the elements of our form. Right-click MainForm, then New > Form. A new form is added to the list. Since it is already selected, just start typing to rename it FormAuthors. We will use this subform to create the link to our Authors table through the BooksAuthors table. Right-click the FormAuthors and select Properties. On the Data tab, select table for the Content type, and BooksAuthors for the Content. Now, click on the ellipse button next to List Master Field. A link-fields dialog pops up. This is where we create our link between the Books table and the Authors table. Under BooksAuthors, select BookID and under Books select BookID. Click OK, and you can close the Form Properties dialog.

Création du formulaire Livres

Malgré l'utilisation de l'assistant pour commencer notre formulaire Livres, nous aurons besoin de le modifier par la suite pour ajouter des connexions aux auteurs et aux médias. Passez à nouveau par l'assistant avec la table Livres, en ajoutant les champs Titre et Publié. Sautez encore les sous-formulaires. Nous ajouterons nos sous-formulaires manuellement. Pour la mise en page, utilisez soit Colonnes - Étiquettes en haut, soit Colonnes - Étiquettes à gauche. J'ai utilisé Colonnes - Étiquettes en haut. Après avoir nommé le formulaire Livres à l'étape huit, sélectionnez Modifier le formulaire, puis cliquez sur Terminer. Cette fois, le formulaire est ouvert pour l'édition. Nous allons ajouter deux sous-formulaires pour établir une connexion avec les auteurs et les médias.

Dans la barre d'outils au bas du formulaire, sélectionnez le Navigateur de formulaires. Cela ouvre une petite fenêtre contenant les éléments de notre formulaire. Faites un clic droit sur MainForm, puis Nouveau > Formulaire. Un nouveau formulaire est ajouté à la liste. Comme il est déjà sélectionné, il suffit de commencer à taper pour le renommer FormAuteurs. Nous allons utiliser ce sous-formulaire pour créer le lien vers notre table Auteurs en passant par la table LivresAuteurs. Cliquez droit sur FormAuteurs et sélectionnez Propriétés. Sous l'onglet Données, choisissez Table pour le type de contenu, et LivresAuteurs pour le contenu. Maintenant, cliquez sur le bouton avec les … à côté de la liste Lier les champs maîtres. Une boîte de dialogue de liaison des champs (Lier les champs) apparaît. C'est là que nous créons notre lien entre la table Livres et la table LivresAuteurs. Sous LivresAuteurs, sélectionnez LivreID et sous Livres sélectionnez LivreID. Cliquez sur OK et vous pouvez fermer la boîte de dialogue Propriétés du formulaire.

2

Create another subform under MainForm named FormMedia. Edit the properties, setting the Content Type to table, and the Content to BooksMedia. Click the ellipse next to List Master Field, and select BookID under both BooksMedia and Books. Click OK and close the Form Properties dialog. Now, we need to create our controls that will contain our authors and media. Remember, we need the ability to select more than one, so a table is our best choice for the control. Click on the More Controls button on the toolbar on the left side. A More Controls toolbar will pop up. Make sure you have the FormAuthors selected in the Form Navigator. Click on the Table button in the More Controls toolbar. Underneath the two input boxes for title and published, draw the table on the page. Right-click in the header section of the new table and select Insert Column > List Box. Right-click the newly created column and select Column. This displays the List Box properties. On the General tab, change the label to Authors. Switch to the Data tab. For the Data field, select AuhtorID. This tells Base we want to relate this to the AuthorID field in the BooksAuthors table. For Type of list content, select Sql. In List Content, we will write a short SQL statement to fill our list box with the names from the Authors table. You can click on the down-arrow to give yourself a small edit box to work in. The SQL statement is: SELECT “Name”, “AuthorID” FROM “Authors”

Créez un un autre sous-formulaire sous MainForm nommé FormMédias. Modifiez les propriétés et définissez comme Table le type de contenu et le contenu à LivresMédias. Cliquez sur le bouton avec les … à côté de la liste Lier les champs maîtres, puis sélectionnez LivreID sous les deux LivresMédias et Livres. Cliquez sur OK et fermez la boîte de dialogue Propriétés du formulaire.

Maintenant, nous devons créer nos contrôles qui contiennent nos auteurs et des médias. Rappelez-vous, nous avons besoin de la possibilité d'en sélectionner plus d'un, donc une table est notre meilleur choix pour le contrôle. Cliquez sur le bouton Contrôles supplémentaires dans la barre d'outils sur le côté gauche. Une barre d'outils Contrôles supplémentaires apparaît.

Assurez-vous que vous avez sélectionné le formulaire FormAuteurs dans le Navigateur de formulaires. Cliquez sur le bouton Contrôle de Table de la barre d'outils Contrôles supplémentaires. Sous les deux zones de saisie pour le titre et la date de publication, dessinez le tableau sur la page. Faites un clic droit dans la section d'en-tête de la nouvelle table et sélectionnez Insérer une colonne > Zone de liste. Cliquez droit sur la colonne nouvellement créée et sélectionnez Colonne. Cela affiche les propriétés de zone de liste. Dans l'onglet Général, modifiez l'étiquette pour les Auteurs. Passez à l'onglet Données. Pour le champ de données, sélectionnez AuteurID. Cette base indique que nous voulons faire le lien avec le domaine AuteurID dans le tableau LivresAuteurs. Pour le type de contenu de la liste, sélectionnez SQL. Dans la liste Contenu de liste, nous allons écrire une courte déclaration SQL pour remplir notre zone de liste avec les noms de la table Auteurs. Vous pouvez cliquer sur la flèche vers le bas afin de vous donner une petite boîte d'édition pour travailler. L'instruction SQL est la suivante : SELECT “Nom”, “AuteurID” FROM “Auteurs”

This statement will select all the records from the Authors table. Set the Bound field to 1. The Bound field selects which field will fill the list box. Since we selected the Name field first, the bound field of 1 will fill the list box with the data from the Name fields. Close the list box properties and save your work. We will create the Media control in the same way we did the Authors. Select the FormMedia in the Form Navigator. Draw the table control to the right of your title and published controls. Create a column in the control. Open the column properties and change the label to Media. Set the Data field to MediaID, and the Type of list content to Sql. The SQL statement for the List Content is: SELECT “Type”, “MediaID” FROM “Media” Set the Bound field to 1. We are now finished with the form. Save and close it.

Cette déclaration permet de sélectionner tous les enregistrements de la table Auteurs. Positionnez à 1 le champ Champ lié. Le champ Champ lié détermine quel champ remplira la zone de liste. Comme nous avons sélectionné le champ Nom d'abord, la liaison de 1 remplira la zone de liste avec les données des champs de Nom. Fermez les propriétés de la zone de liste et enregistrez votre travail.

Nous allons créer le Contrôle de table des Médias de la même manière que nous avons fait pour les auteurs. Sélectionnez le formulaire FormMédias dans le Navigateur de formulaires. Dessinez le Contrôle de table à la droite de vos contrôles de titre et de publication. Créez une colonne dans le contrôle. Ouvrez les propriétés de la colonne et changez l'étiquette pour Médias. Définissez le champ Champ de données à MédiasID et le Type de contenu de liste pour SQL. L'instruction SQL pour le contenu de liste est la suivante :

SELECT “Type”, “MédiasID” FROM “Médias”

Définissez le champ Champ lié à 1.

Nous en avons maintenant terminé avec le formulaire. Enregistrez et fermez-le.

Using the Forms The Authors and Media forms are simple to use. Just select an empty row and type in the name or type. You will want to add your authors and types before using the books form. The books form is easy to use as well. Fill in your Title and Published year (or Unknown if you don't know the year). The authors and media tables give you a list box from which you can select your authors and media types. Note that you can select more than one author and media type. To create a new record, click on the new record or next buttons in the form control toolbar. We now have a working method for entering data into our database. While it works, there is one disadvantage to this setup. If you find that you need an author or media type that is not there, you have to close the books form and open the authors or media forms. In a later How-To, we will attempt to overcome this inconvenience. In the next HowTo, we will create a query and a report for extracting information from our database.

Utiliser les formulaires

Les formulaires Auteurs et Médias sont simples à utiliser. Il suffit de sélectionner une ligne vide et de taper le nom ou le type. Vous devrez ajouter vos auteurs et vos types avant d'utiliser le formulaire Livres. Le formulaire Livres est également facile à utiliser. Remplissez votre titre et l'année de publication (ou inconnu si vous ne connaissez pas l'année). Les tables Auteurs et Médias vous donnent une zone de liste à partir de laquelle vous pouvez sélectionner vos auteurs et les types de médias. Notez que vous pouvez sélectionner plus d'un auteur et type de média. Pour créer un nouvel enregistrement, cliquez sur le nouvel enregistrement ou les boutons suivants dans la barre d'outils de contrôle de formulaire.

Nous avons maintenant une méthode qui fonctionne pour entrer des données dans notre base de données. Mais même si elle fonctionne, il y a un inconvénient dans cette manière de faire. Dans le cas où vous avez besoin d'un auteur ou d'un type qui n'existe pas, vous devez fermer le formulaire Livres et ouvrir les formulaires Auteurs ou Médias. Dans un futur tutoriel, nous tenterons de remédier à cet inconvénient.

Dans le prochain tutoriel, nous créerons une requête et un rapport pour extraire des informations de notre base de données.

issue68/tutoriel_-_libreoffice.txt · Dernière modification : 2013/02/24 16:58 de fcm_-_ekel