[Résolu] Formulaire avec liste déroulante liée à X tables

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
ninouee
Fraîchement OOthentifié
Messages : 8
Inscription : 31 juil. 2013 09:54

[Résolu] Formulaire avec liste déroulante liée à X tables

Message par ninouee »

Bonjour à tous,

Voila quelques informations avant de vous poser ma question.

J'utilise Open office 4.1.2 avec windows 10

J'essaie de créer une base de données pour ne plus avoir à saisir la même informations 30 fois dans 30 tableaux différents. C'est exagéré mais c'est presque ça.

Ma dernière utilisation du SQL date d'il y a 15 avec access donc j'ai oublier pas mal de choses...

Pour le moment j'ai créé mes tables et je les ai reliées entre elles avec les clés étrangères.

J'essaie de comprendre comment faire un formulaire de saisie dont certains champs sont les informations des autres tables liées.
J'ai réussi à faire mes listes déroulantes liées à mes autres tables mais la seule chose que mes listes m'affichent c'est la 1ère colonne de la table et des fois les enregistrement ne se font parfois pas.

Avez vous un tutoriel qui expliquerait comment faire:
- des listes dans un formulaire dont l'élément de la liste pourrait être la concaténation de deux colonnes (ou plus) d'une ligne d'une table?
- permettre l'enregistrement des informations liées au choix de la liste dans la table de travaille?

Au cas où j'ai mis en pièce jointe ma table de travail qui n'est qu'un tout petit morceau de mon projet.

Je ne cherche pas la solution tout prête à les interrogation mais surtout un début d'explication, une orientation pour que je puisse comprendre mes erreurs.

Merci à vous.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par ninouee le 14 nov. 2017 10:34, modifié 3 fois.
Libre Office Version: 6.0.3.2 sur Ubuntu (boulot)
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9255
Inscription : 28 août 2010 08:45

Re: [Base] Formulaire avec liste déroulante liée à X tables

Message par micmac »

Bonjour,

Suppression de la balise [Base] inutile dans la section dédiée à Bas
[b][color=#404080]ninouee[/color][/b] a écrit :J'utilise Open office 4.1.2 avec windows 10
Information à faire figurer dans votre signature qui indique
votre signature a écrit :Open Office 3.2.1 sur Windows XP (boulot)
Libre Office 3.5.4.2 sur Ubuntu (boulot)
Microsoft office suite 2007 sur Windows sept (perso)
Accès direct à votre signature pour la corriger
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: Formulaire avec liste déroulante liée à X tables

Message par Piaf »

Bonjour
Un petit exemple.
Tes listes doivent être basées sur une instruction SQL avec deux colonnes, le contrôle affichera la valeur de la première colonne de l'instruction.
Dans la première colonne tu mets donc le champ ou les champs (par concaténation) que veux voir apparaître dans ta liste, dans la seconde tu mets la valeur à stocker (Propriété Champ lié, par défaut 1) dans la table sous-jacente.
Liste.png
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
ninouee
Fraîchement OOthentifié
Messages : 8
Inscription : 31 juil. 2013 09:54

Re: Formulaire avec liste déroulante liée à X tables

Message par ninouee »

Bonjour

D'abord pardonnez-moi pour l'oubli de mise à jour de ma signature, les versions ont évoluées entre temps.


J'avais pensé au SQL pour l'affichage des listes.

Je vais tester ça et essayer de comprendre. Déjà je ne pensait pas qu'on pouvait avoir le CONCAT avec le SELECT, va falloir que je reprenne les formules SQL.

Dans votre exemple de cotre SQL vous encadrez NumLGT avec ceci [ ] quel en est la signification et utilité?

Autre question, votre fichier joint il y a un mot de passe quel est-il?

Merci à vous.
Libre Office Version: 6.0.3.2 sur Ubuntu (boulot)
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16960
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: Formulaire avec liste déroulante liée à X tables

Message par jeanmimi »

Bonjour,
ninouee a écrit :votre fichier joint il y a un mot de passe quel est-il?
Je n'ai pas vu de mot de passe, mais il faut enregistrer la Base avant de l'ouvrir.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: Formulaire avec liste déroulante liée à X tables

Message par Piaf »

Bonjour
Pour taper l'instruction SQL, il suffit de cliquer sur le bouton avec les trois petits points en face la propriété Contenu de liste.
Tu encadres le nom des champs par une double quote, c'est le logiciel qui les remplace par des crochets.
Assistant.png
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
ninouee
Fraîchement OOthentifié
Messages : 8
Inscription : 31 juil. 2013 09:54

Re: Formulaire avec liste déroulante liée à X tables

Message par ninouee »

Bonjour

Je vous remercie pour vos réponses. Elles m’ont aidées a avancer mais par manque de temps j’ai du mettre ce projet de côté. J’espÈre pourvoir revenir dessus début janvier et je vous tiendrai au courant des évolutions.
Merci
Libre Office Version: 6.0.3.2 sur Ubuntu (boulot)