[Résolu]Formulaire : liste déroulante liée à un champ
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.
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.
[Résolu]Formulaire : liste déroulante liée à un champ
Bonjour,
J'ai un formulaire, dont le contenu est la table "ludothèque".
Dans ce formulaire, j'ai une liste déroulante qui devrait afficher les noms et prénoms des personnes. Ces personnes sont dans une table "Adhérents".
J'ai déjà fait ce genre de choses il y a plusieurs années, mais impossible de me souvenir comment.
Quelqu'un pourrait-il m'aider ?
J'ai un formulaire, dont le contenu est la table "ludothèque".
Dans ce formulaire, j'ai une liste déroulante qui devrait afficher les noms et prénoms des personnes. Ces personnes sont dans une table "Adhérents".
J'ai déjà fait ce genre de choses il y a plusieurs années, mais impossible de me souvenir comment.
Quelqu'un pourrait-il m'aider ?
Dernière modification par coucou le 28 mars 2018 13:29, modifié 1 fois.
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Re: Formulaire : liste déroulante liée à un champ
Super, merci !
Je suis passé par une requête pour faire cette liste déroulante, mais dans la table "Adhérents", les noms et prénoms sont dans deux champs différents.
Comment faire pour que le nom et le prénoms des adhérents apparaissent dans la même liste déroulante ? (et tout d'abord, est-ce possible ?)
Je suis passé par une requête pour faire cette liste déroulante, mais dans la table "Adhérents", les noms et prénoms sont dans deux champs différents.
Comment faire pour que le nom et le prénoms des adhérents apparaissent dans la même liste déroulante ? (et tout d'abord, est-ce possible ?)
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Formulaire : liste déroulante liée à un champ
Bonjour,
Il y a de nombreux exemples dans le forum.
Il faut passer par une concaténation des champs :coucou a écrit :Comment faire pour que le nom et le prénoms des adhérents apparaissent dans la même liste déroulante ? (et tout d'abord, est-ce possible ?)
Code : Tout sélectionner
"nom"||' '||"prénom"
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Formulaire : liste déroulante liée à un champ
Merci pour votre réponse.
J'ai fait des recherches sur le forum, mais je ne comprends pas bien comment concaténer. J'imagine que dans Contrôle-> Données -> "type de contenu de liste"' il faut utiliser SQL et non pas Requête, mais ensuite, je suis un peu perdu...
J'ai fait des recherches sur le forum, mais je ne comprends pas bien comment concaténer. J'imagine que dans Contrôle-> Données -> "type de contenu de liste"' il faut utiliser SQL et non pas Requête, mais ensuite, je suis un peu perdu...
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Formulaire : liste déroulante liée à un champ
Une recherche sur SQL CONCAT permet d'avoir les différentes façons de concaténer.
Une est par exemple illustrée ici :
https://forum.openoffice.org/fr/forum/v ... AT#p280705
Une est par exemple illustrée ici :
https://forum.openoffice.org/fr/forum/v ... AT#p280705
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Formulaire : liste déroulante liée à un champ
Bonjour et merci pour votre réponse.
J'ai suivi l’exemple en question, et cela me renvoie l'erreur suivante :
J'ai suivi l’exemple en question, et cela me renvoie l'erreur suivante :
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Bonsoir
n'est pas L'encadrement d'un terme par double cote fait référence à un champ, ce que t'indique le message d'erreur, il ne trouve pas la colonne /.
A+
Tu n'as pas suivi l'exemple en question donc l'erreur est normalecoucou a écrit : J'ai suivi l’exemple en question, et cela me renvoie l'erreur suivante :
Code : Tout sélectionner
SELECT(CONCAT(CONCAT("Nom","/"),"Prénom") FROM "Personnes"
Code : Tout sélectionner
SELECT(CONCAT(CONCAT("Nom",'/'),"Prénom") FROM "Personnes"
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Re: Formulaire : liste déroulante liée à un champ
Merci pour cette précision !
Ah, ma vue n'est plus aussi bonne, avec l'âge...
Et est-il possible de faire en sorte que lorsqu'un élément de cette liste déroulante est sélectionné, je puisse voir dans le formulaire des autres données concernant cet élément ? (par exemple, l'élément nom+prénom m'affichera, dans un formulaire à coté, ses coordonnées complètes, coordonnées que je pourrais ensuite directement modifier sans aller dans la table en question).
Ah, ma vue n'est plus aussi bonne, avec l'âge...
Et est-il possible de faire en sorte que lorsqu'un élément de cette liste déroulante est sélectionné, je puisse voir dans le formulaire des autres données concernant cet élément ? (par exemple, l'élément nom+prénom m'affichera, dans un formulaire à coté, ses coordonnées complètes, coordonnées que je pourrais ensuite directement modifier sans aller dans la table en question).
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Bonjour
Merci de fournir un fichier exposant ce que tu veux obtenir.
Tu devrais consulter [Base] Sélection d'enregistrement avec une liste déroulante
A+
Merci de fournir un fichier exposant ce que tu veux obtenir.
Tu devrais consulter [Base] Sélection d'enregistrement avec une liste déroulante
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
Re: Formulaire : liste déroulante liée à un champ
Voici, en gros, ce que je souhaiterais. J'ai fait ça pour illustrer visuellement, mais cela ne fonctionne pas car je ne sais pas pour l'instant comment faire.
L'idée c'est :
- Une table "Inventaire.Jeux"
- une table "Adhérents"
Les adhérents peuvent emprunter des jeux.
Donc sur la "fiche" d'un jeu, on doit pouvoir saisir l'adhérent en le sélectionnant dans une liste déroulante. Une fois celui-ci sélectionné, il est enregistré dans le champ "emprunteur" de la table "Jeux" (bon, cela ne fonctionne pas encore tout à fait comme je voudrais, mais on verra cela plus tard).
De plus, quand l'adhérent est sélectionné dans la liste déroulante, il faudrait que ses informations personnelles (adresse, n° tél, etc) apparaissent sur la droite, en-dessous de la liste déroulante. Ses informations sont dans la table "Adhérents".
Et il faudrait que l'on puisse modifier ces informations directement depuis ce formulaire.
L'idée c'est :
- Une table "Inventaire.Jeux"
- une table "Adhérents"
Les adhérents peuvent emprunter des jeux.
Donc sur la "fiche" d'un jeu, on doit pouvoir saisir l'adhérent en le sélectionnant dans une liste déroulante. Une fois celui-ci sélectionné, il est enregistré dans le champ "emprunteur" de la table "Jeux" (bon, cela ne fonctionne pas encore tout à fait comme je voudrais, mais on verra cela plus tard).
De plus, quand l'adhérent est sélectionné dans la liste déroulante, il faudrait que ses informations personnelles (adresse, n° tél, etc) apparaissent sur la droite, en-dessous de la liste déroulante. Ses informations sont dans la table "Adhérents".
Et il faudrait que l'on puisse modifier ces informations directement depuis ce formulaire.
- Pièces jointes
-
- ludo.post.complet.odb
- (134.97 Kio) Téléchargé 111 fois
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Formulaire : liste déroulante liée à un champ
Bonjour,
Comme un jeu peut avoir plusieurs emprunteurs et qu'un emprunteur peut emprunter plusieurs jeux, il te faut une Table supplémentaire pour gérer les emprunts.
Même plus tard ça ne fonctionnera pas comme tu le souhaites.coucou a écrit :(bon, cela ne fonctionne pas encore tout à fait comme je voudrais, mais on verra cela plus tard)
Comme un jeu peut avoir plusieurs emprunteurs et qu'un emprunteur peut emprunter plusieurs jeux, il te faut une Table supplémentaire pour gérer les emprunts.
Ajout : Ce qui pourrait donner cette version à tester : | Pour les images, il faut simplement mettre la Base dans le même répertoire, et dans la Base ne stocker que le nom de l'image.
Dernière modification par jeanmimi le 22 mars 2018 15:38, modifié 3 fois.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Formulaire : liste déroulante liée à un champ
Un jeu ne peut avoir qu'un seul emprunteur (nous n'aurons qu'un seul exemplaire de chaque jeu). Par contre, un Adhérent pourra emprunter plusieurs jeux, il est vrai.
Il faut quand même une table supplémentaire ?
Il faut quand même une table supplémentaire ?
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
- jeanmimi
- Grand Maître de l'OOffice
- Messages : 16955
- Inscription : 03 mars 2006 17:02
- Localisation : Venise verte
Re: Formulaire : liste déroulante liée à un champ
Au cours des mois et des années, ce jeu sera bien emprunté par plusieurs personnes. La Table Inventaire_jeux de ta base ne permet pas d'enregistrer ces différents emprunteurs.coucou a écrit :Un jeu ne peut avoir qu'un seul emprunteur
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Re: Formulaire : liste déroulante liée à un champ
Tout à fait, mais il n'est pas important que nous conservions l'historique des emprunts. Il faut surtout savoir quel jeu est dehors et chez qui.
Pour la base ludo.post.complet_v2.odb, malheureusement, cela ne fonctionne pas. Le bouton "afficher le jeu" ne produit aucun résultat. Et le formulaire ne permet pas de lier un adhérent à un jeu.
Pour la base ludo.post.complet_v2.odb, malheureusement, cela ne fonctionne pas. Le bouton "afficher le jeu" ne produit aucun résultat. Et le formulaire ne permet pas de lier un adhérent à un jeu.
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Petite question: est-il indispensable de créer la table "Inventaire_jeux" pour faire ce que je souhaite ?
J'ai seulement besoin que les données concernant les adhérents s'affichent lorsque un adhérent est sélectionné dans la liste déroulante (afin de différencier deux "Jean Dupont", par exemple. Cas rare, mais bon, on ne sait jamais. Est également pour pouvoir modifier les coordonnées directement.)
J'ai crée un sous-formulaire avec un contrôle de table, mais je n'arrive pas à le lier à la sélection de la liste déroulante.
J'ai seulement besoin que les données concernant les adhérents s'affichent lorsque un adhérent est sélectionné dans la liste déroulante (afin de différencier deux "Jean Dupont", par exemple. Cas rare, mais bon, on ne sait jamais. Est également pour pouvoir modifier les coordonnées directement.)
J'ai crée un sous-formulaire avec un contrôle de table, mais je n'arrive pas à le lier à la sélection de la liste déroulante.
La modération vous a écrit: Merci de ne pas poster plusieurs messages à la suite, si vous devez ajouter un complément d'information, le bouton "Editer" à la droite du message permet d'y remédier.
En attendant une prochaine réponse, vous pouvez participer également en répondant à d'autres questions sur notre forum.
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Bonjour,
peut être une présentation à partir de l'adhérent directement -> "Fm_adherent".
très simple, sans macros.
Dans les relations de tables il faut cocher la mise en cascade des liens et les sous-formulaires sont liés par le lien idoine.
@+
peut être une présentation à partir de l'adhérent directement -> "Fm_adherent".
très simple, sans macros.
Dans les relations de tables il faut cocher la mise en cascade des liens et les sous-formulaires sont liés par le lien idoine.
@+
AOO 4.1.14 et LO 7.3.7.2 sous OsX 10.13.6 High Sierra ; Windows 10 sous AOO 4.1.14 et LibO 7.3.7.2
Re: Formulaire : liste déroulante liée à un champ
Bonjour,
merci pour votre réponse. Je vais essayer ça.
Le problème, c'est que la V2 et la V3 n'ont pas les mêmes noms de champs que ma V1. Du coup, je n'arrive pas à reproduire ce que vous faites, car il y a chaque fois des messages d'erreur, les noms des tables et des champs n'étant pas les mêmes. J'ai beau tenter de corriger tous ces noms un par un , il y a toujours un truc qui ne colle pas, et les messages d'erreur n'étant pas très détaillés (on ne sait pas de quels formulaire ou contrôle ils proviennent), je n'arrive jamais à corriger toutes les erreurs.
Par exemple, la première erreur est celle-ci: Et je ne sais pas de quel formulaire ou contre elle provient...
merci pour votre réponse. Je vais essayer ça.
Le problème, c'est que la V2 et la V3 n'ont pas les mêmes noms de champs que ma V1. Du coup, je n'arrive pas à reproduire ce que vous faites, car il y a chaque fois des messages d'erreur, les noms des tables et des champs n'étant pas les mêmes. J'ai beau tenter de corriger tous ces noms un par un , il y a toujours un truc qui ne colle pas, et les messages d'erreur n'étant pas très détaillés (on ne sait pas de quels formulaire ou contrôle ils proviennent), je n'arrive jamais à corriger toutes les erreurs.
Par exemple, la première erreur est celle-ci: Et je ne sais pas de quel formulaire ou contre elle provient...
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Fournissez un exemplaire de la V1, on verra ce qui pose problème!
@+
@+
AOO 4.1.14 et LO 7.3.7.2 sous OsX 10.13.6 High Sierra ; Windows 10 sous AOO 4.1.14 et LibO 7.3.7.2
Re: Formulaire : liste déroulante liée à un champ
Voici la V1 dans laquelle j'ai importé le "Fm_adherent" de la V3 en corrigeant, du mieux que j'ai pu, les noms de champs et de tables.
Si vous voyez pourquoi cela ne fonctionne pas, ce serait génial,parce que j'ai fait 10 fois le tour et je ne comprends pas. C'est peut-être tout bête et je ne suis pas assez expérimenté pour le voir...
Si vous voyez pourquoi cela ne fonctionne pas, ce serait génial,parce que j'ai fait 10 fois le tour et je ne comprends pas. C'est peut-être tout bête et je ne suis pas assez expérimenté pour le voir...
- Pièces jointes
-
- ludo.post.complet.odb
- (157.55 Kio) Téléchargé 78 fois
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Voilà!
il était plus facile de reconstruire les sous-formulaires
@+
il était plus facile de reconstruire les sous-formulaires
@+
AOO 4.1.14 et LO 7.3.7.2 sous OsX 10.13.6 High Sierra ; Windows 10 sous AOO 4.1.14 et LibO 7.3.7.2
Re: Formulaire : liste déroulante liée à un champ
Un grand merci !
Personnellement, je n'ai jamais réussi à faire en sorte qu'un contrôle de table affiche quelque chose. Il y sûrement un truc à activer, mais chez moi il reste toujours grisé, je ne sais pas pourquoi...
Et maintenant, le problème que j'ai , c'est que si je fais une requête pour savoir quels jeux sont prêtés, je n'obtient que les ID des jeux, puisque la table emprunts ne mentionne pas le nom des jeux. Comment faire pour avoir le nom des jeux empruntés ? Là, je ne vois plus, je commence à m'embrouiller la tête
Personnellement, je n'ai jamais réussi à faire en sorte qu'un contrôle de table affiche quelque chose. Il y sûrement un truc à activer, mais chez moi il reste toujours grisé, je ne sais pas pourquoi...
Et maintenant, le problème que j'ai , c'est que si je fais une requête pour savoir quels jeux sont prêtés, je n'obtient que les ID des jeux, puisque la table emprunts ne mentionne pas le nom des jeux. Comment faire pour avoir le nom des jeux empruntés ? Là, je ne vois plus, je commence à m'embrouiller la tête
LibreOffice Version: 5.1.6.2
LinuxMint 18.3
LinuxMint 18.3
Re: Formulaire : liste déroulante liée à un champ
Ce serait bon de soumettre le sujet à la section"Projet"; ce qui permet de pouvoir répondre à toutes les questions dans le mm fil.
réponse rapide:
- un champ booléen dans la table "emprunts", activé quand le jeu est emprunté et désactivé lorsqu'il est rendu;
- ou une date de retour
@+
réponse rapide:
- un champ booléen dans la table "emprunts", activé quand le jeu est emprunté et désactivé lorsqu'il est rendu;
- ou une date de retour
@+
AOO 4.1.14 et LO 7.3.7.2 sous OsX 10.13.6 High Sierra ; Windows 10 sous AOO 4.1.14 et LibO 7.3.7.2