Bonjour
En préambule une précision...
Il ne faut pas confondre deux choses :
1.Quand un enregistrement est sélectionné, disposer de listes pour modifier
la valeur d'un des champs. Par exemple, pour une facture, pouvoir choisir
dans la liste des clients. Il va de soi que ce faisant on ne souhaite pas
changer de facture...
2. Rechercher, choisir, sélectionner un enregistrement (une facture, un
client, un contrebassiste, etc.), par exemple d'après son nom. Après cette
opération l'enregistrement courant change : ce n'est plus systématiquement
le premier saisi mais celui trouvé qui est affiché, prêt pour la
consultation ou la modification.
De ce que je comprends tu souhaites réaliser le cas 2... mais ton formulaire
met en oeuvre le cas 1.
Le formulaire principal est fondé sur la table Clients et ta liste
déroulante modifie le contenu du champ NomClient.
Autrement dit, quand on sélectionne dans la liste, on modifie le nom du
client courant... Ce n'est pas ce que l'on veut.
On peut obtenir ce que tu souhaites par macro ou par un "truc" : utiliser
une table "supplémentaire" qui ne servira que pour la sélection. Dans
l'exemple joint je l'ai nommée... Sélection.
Elle ne contient que deux champs :
ID_Sélection (Integer - clé primaire)
Sélection (Texte VARCHAR_IGNORECASE)
Fonder le formulaire principal (MainForm) sur cette table Sélection
La liste déroulante sera liée au champ Sélection, ainsi, lorsqu'on
sélectionne dans la liste l'ID client correspondant sera enregistré dans le
champ Sélection de la table Sélection.
Le sous-formulaire (SubForm) reste fondé sur la table Commandes. Il est lié
au formulaire principal par les champs:
Sélection et RefClient.
Pour peaufiner, j'ai ajouté un bouton permettant de rafraîchir le
sous-formulaire après choix dans la liste déroulante.
Il suffit pour cela de choisir cette action dans l'onglet général des
propriétés du bouton.
test.odb <http://nabble.documentfoundation.org/file/n4036108/test.odb>
Je ne détaille pas les solutions macros, car il faut connaître les macros et
je ne sais pas si tu souhaites t'orienter par là.
Cordialement
Pierre-Yves
--
View this message in context:
http://nabble.documentfoundation.org/Base-maj-sous-formulaire-par-listbox-tp4036088p4036108.html
Sent from the Users mailing list archive at Nabble.com.
--
Envoyez un mail à users+help@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être
supprimés
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.