Outils pour utilisateurs

Outils du site


issue83:libreoffice

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
issue83:libreoffice [2014/09/05 10:38] – [2] auntieeissue83:libreoffice [2014/09/05 15:19] (Version actuelle) andre_domenech
Ligne 27: Ligne 27:
 LibreOffice Partie 36 : Les vues de Base LibreOffice Partie 36 : Les vues de Base
  
-Si vous travaillez avec Base pendant quelque temps, vous rencontrerez une situation où vous aurez besoin d'une table dont la structure est un peu différente ou vous aurez besoin des résultats d'une requête sous forme d'une table que vous pourrez utiliser. La solution à ces problèmes est « Vues ». Une vue est une requête sous forme d'une table qui pourra servir dans d'autre requêtes, des formulaires ou des contrôles. Aujourd'hui, je vous montrerai comment cela peut vous être utile dans la création de formulaires.+Si vous travaillez avec Base pendant quelque temps, vous rencontrerez une situation où vous aurez besoin d'une table dont la structure est un peu différente, où vous aurez besoin des résultats d'une requête sous forme d'une table que vous pourrez utiliser. La solution à ces problèmes est « Vues ». Une vue est une requête sous forme d'une table qui pourra servir dans d'autre requêtes, des formulaires ou des contrôles. Aujourd'hui, je vous montrerai comment cela peut vous être utile dans la création de formulaires.
  
 Nos tables Nos tables
Ligne 47: Ligne 47:
 LastName|Varchar(25)|Not Null LastName|Varchar(25)|Not Null
  
-Vous verrez à droite le SQL pour créer les tables. Créer une nouvelle base de données, puis allez à Outils > SQL et tapez les commandes à la main ou faites un copier/coller.+Vous verrez à droite le SQL pour créer les tables. Créez une nouvelle base de données, puis allez à Outils > SQL et tapez les commandes à la main ou faites un copier/coller.
  
 ===== 2 ===== ===== 2 =====
Ligne 63: Ligne 63:
 Les commandes SQL ci-dessus sont également disponibles sur pastebin.com à http://pastebin.com/Wyb3R5Fz. Les commandes SQL ci-dessus sont également disponibles sur pastebin.com à http://pastebin.com/Wyb3R5Fz.
  
-La clé de cette tâche est la clé externe « MemberID » dans la table « Project », qui est relié au champ ID de la table « TeamMember ». Quand nous créons notre formulaire, nous créerons un menu déroulant permettant de sélectionner le responsable du projet parmi les membres de l'équipe. Remarquez que la table « TeamMember » contient des champs pour le prénom et le nom de famille. Le contrôle de liste nous permet d'utiliser un seul champ dans la liste. On pourrait n'afficher que le nom de famille dans la liste déroulante, mais que faire si deux membres de l'équipe ont le même nom de famille. Nous allons résoudre ce problème en créant une vue qui rassemblera le prénom et le nom de famille dans un seul champ appelé « Name ». Nous utiliserons notre vue pour établir la nouvelle liste déroulante.+La clé de cette tâche est la clé externe « MemberID » dans la table « Project », qui est reliée au champ ID de la table « TeamMember ». Quand nous créons notre formulaire, nous créerons un menu déroulant permettant de sélectionner le responsable du projet parmi les membres de l'équipe. Remarquez que la table « TeamMember » contient des champs pour le prénom et le nom. Le contrôle de liste nous permet d'utiliser un seul champ dans la liste. On pourrait n'afficher que le nom dans la liste déroulante, mais que faire si deux membres de l'équipe ont le même nom Nous allons résoudre ce problème en créant une vue qui rassemblera le prénom et le nom dans un seul champ appelé « Name ». Nous utiliserons notre vue pour établir la nouvelle liste déroulante.
  
-Si les tables ne affichent pas dans votre liste de tables après avoir exécuter les commandes, Affichage > Actualiser les tables (Review > Refresh Table) établira la liste.+Si les tables ne s'affichent pas dans votre liste de tablesaprès avoir exécuté les commandes, Affichage > Actualiser les tables (Review > Refresh Table) établira la liste.
  
-Créer une requête / vue+Créer une requête/vue
  
-Nous utiliserons un processus en deux étapes pour créer notre vue. D'abord, nous créons une requête et, ensuite, nous convertissons la requête en vue. Dans notre requête, nous créons un seul champ en combinant les champs prénom et nom de famille. Nous obtiendrons aussi le champ « ID », puisque nous en aurons besoin pour nous lier à la table « Project ».+Nous utiliserons un processus en deux étapes pour créer notre vue. D'abord, nous créons une requête et, ensuite, nous convertissons la requête en vue. Dans notre requête, nous créons un seul champ en combinant les champs prénom et nom. Nous obtiendrons aussi le champ « ID », puisque nous en aurons besoin pour nous lier à la table « Project ».
  
  
Ligne 85: Ligne 85:
  
 Turning the query into a view is as simple as right-clicking the query name and selecting “Create as View.” Name the view “TeamView.” If you select “Tables” under the “Database” pane, you will see “TeamView” listed under the tables.** Turning the query into a view is as simple as right-clicking the query name and selecting “Create as View.” Name the view “TeamView.” If you select “Tables” under the “Database” pane, you will see “TeamView” listed under the tables.**
 +
 +Pour créer la requête, nous sélectionnons l'option « Requêtes » dans le volet « Base de données ». Dans le volet « Tâches », sélectionnez « Créer une requête en mode SQL... » La commande SQL suivante créera notre requête :
 +
 +SELECT "FirstName" || ' ' || "LastName" AS "Name",
 +   "ID" FROM "TeamMember";
 +   
 +Si vous connaissez le SQL, cela ressemble à un requête standard sauf pour ce qui concerne les doubles symboles trait vertical « || ». On les utilise pour concaténer les chaînes. Dans la commande, nous sélectionnons chaque « FirstName » et l'adjoignons à une espace, puis nous prenons le résultat et l'adjoignons à « LastName ». Enfin, nous nommons cette chaîne « Name ». Nous obtenons aussi le « ID » puisqu'il identifie chaque enregistrement. Vous pouvez tester la requête pour vous assurer qu'elle fonctionne, mais, à ce stade, les résultats sont vides, néanmoins la requête devrait s'exécuter sans erreur. Enregistrez la requête sous le nom de « QueryTeam ».
 +
 +Transformer la requête en vue est aussi simple que faire un clic droit sur le nom de la requête et sélectionner « Créer une vue ». Appelez la vue « TeamView ». Si vous sélectionnez « Tables » dans le volet « Base de données », vous verrez que « TeamView » figure dans la liste des tables.
  
 ===== 4 ===== ===== 4 =====
Ligne 95: Ligne 104:
  
 For the project form, we need about the same thing, except use “Table: Project” from the drop-down in step 1, and select all the fields except for “ID” for inclusion in the form. Name the form “ProjectForm” and select “Modify the form” on step 8. This time, instead of the form opening for input, it opens for editing.** For the project form, we need about the same thing, except use “Table: Project” from the drop-down in step 1, and select all the fields except for “ID” for inclusion in the form. Name the form “ProjectForm” and select “Modify the form” on step 8. This time, instead of the form opening for input, it opens for editing.**
 +
 +Créer les formulaires
 +
 +Nous allons créer un formulaire pour les membres de l'équipe et un formulaire du projet, pour les données. Le formulaire « membres de l'équipe » étant le plus facile, nous allons le créer en premier. Cliquez sur l'icône « Formulaires » dans le volet « Base de données » et choisissez « Utiliser l'assistant de création de formulaire... ». L'Assistant Formulaire s'affichera.
 +
 +Sur le premier écran, choisissez « Table : TeamMember » dans le menu déroulant. Déplacez les champs « FirstName » (prénom) et « LastName » (nom) dans le menu déroulant appelé « Champs du formulaire ». Cliquez sur le bouton « Suivant > ». Il n'y a pas de sous-formulaire alors cliquez sur « Suivant > » à nouveau. À l'étape 5, vous pouvez utiliser n'importe laquelle des options de contrôle exceptée l'option « Comme feuilles de données ». À l'étape 6, acceptez les défauts. À l'étape 7 vous devez choisir un style qui vous plaît. Quand vous arrivez à l'étape 8, appelez le formulaire « TeamMemberForm » et laissez sur « Utiliser le formulaire ». Lorsque vous cliquez sur « Créer », le formulaire s'affichera pour l'entrée de données. Ajoutez-y quelques noms pour tester le formulaire projet quand nous l'aurons terminé.
 +
 +Pour le formulaire projet nous avons besoin d'à peu près la même chose, sauf qu'il faut utiliser « Table: Project » à partir du menu déroulant à l'étape 1 et qu'il faut sélectionner tous les champs sauf « ID » comme champs du formulaire. Appelez-le « ProjectForm » et, à l'étape 8, choisissez « Modifier le formulaire ». Cette fois-ci, au lieu de s'afficher pour que vous puissiez y entrer des données, il s'affiche pour que vous puissiez l'éditer.
  
 ===== 5 ===== ===== 5 =====
Ligne 103: Ligne 120:
  
 Save your changes and close the design window.** Save your changes and close the design window.**
 +
 +Quand vous créez des formulaires avec l'assistant de création de formulaire, l'assistant groupe une zone texte pour la plupart des types de données avec une étiquette pour chaque champ. Pour changer le contrôle d'un champ de données, il faut dissocier la zone texte de l'étiquette. Ici, nous voulons modifier le champ « Member ». Pour ce faire, faites un clic-croit sur l'étiquette et la zone texte de « Member » et sélectionnez Groupe > Dissocier. Cliquez sur le fond du formulaire pour désélectionner les deux. Faites un clic-droit sur la zone de texte et choisissez « Supprimer ». Sélectionnez « Zone de liste » sur la barre d'outils « Contrôles de formulaire ». Si cette barre n'est pas affichée, alors, pour l'afficher, faites Affichage > Barres d'outil > Contrôles de formulaire. Une fois Zone de liste sélectionnée, le curseur prendra la forme d'une croix, +. Cliquez et déplacez pour créer le menu déroulant. Quand vous lâcherez le bouton de la souris, l'Assistant Zone de liste s'affichera.
 +
 +Comme table, sélectionnez « TeamView » et cliquez sur « Suivant > ». Le champ que nous voulons dans la Zone de liste est « Name » ; sélectionnez donc « Name » et cliquez sur « Suivant > ». Enfin, il faut « Sélectionner les champs dont le contenu doit coïncider ». Pour la « Value Table », choisissez « Member ». Il faut sélectionner ID comme champ pour « List Table », car c'est la clé primaire qui s'accorde avec le champ de clé externe « Member » dans la table « Project ».
 +
 +Enregistrez les modifications et fermez la fenêtre d'édition.
  
 ===== 6 ===== ===== 6 =====
Ligne 108: Ligne 131:
 **Now, if you entered names in “TeamMemberForm”, you can open the “ProjectForm” and those names will appear in the drop-down list box we created. You will want to test creating several projects and assigning members to them to test the workability of your forms. **Now, if you entered names in “TeamMemberForm”, you can open the “ProjectForm” and those names will appear in the drop-down list box we created. You will want to test creating several projects and assigning members to them to test the workability of your forms.
  
-In this article, we discussed the use of a LibreOffice Base view to create a new table from an existing table. We used this view in the construction of a form that automated the retrieval and selection of records from that view.+In this article, we discussed the use of a LibreOffice Base view to create a new table from an existing table. We used this view in the construction of a form that automated the retrieval and selection of records from that view.** 
 + 
 +Maintenant, si vous avez mis des noms dans le formulaire « TeamMemberForm », vous pouvez ouvrir « ProjectForm » et ces noms-là s'afficheront dans le menu déroulant que nous venons de créer. Vous voudrez sans doute créer plusieurs projets et leur assigner des membres pour tester le fonctionnement de vos formulaires. 
 + 
 +Dans cet article, nous avons parlé de l'utilisation d'une vue de LibreOffice Base pour créer une nouvelle table à partir d'une table existante. Nous avons utilisé cette vue pour construire un formulaire automatisant la récupération et la sélection d'enregistrements à partir de cette vue. 
 + 
 + 
 +AE : Je pense qu'il faut laisser tel quel, car c'est du SQL et j'ai volontairement laissé toutes les étiquettes de champs, etc. en anglais. Si vous voulez, on peut mettre texte et tableau en français, mais... Bab : OK pour moi.
  
 TABLEAU TABLEAU
Ligne 131: Ligne 161:
    constraint FK_MEM foreign key ("Member")    constraint FK_MEM foreign key ("Member")
       references "TeamMember" ("ID")       references "TeamMember" ("ID")
-);**+);
  
  
issue83/libreoffice.1409906291.txt.gz · Dernière modification : 2014/09/05 10:38 de auntiee