[HS] Actualisation formulaire par liste déroulante
Publié : 21 nov. 2018 10:03
Bonjour,
Mon problème c'est d'actualiser un sous formulaire à partir d'un choix fait dans une liste déroulante – topos maintes fois traité au sein de ce forum et dont j'ai essayé de m'inspirer et plus concrètement de ce fil de discussion :
https://forum.openoffice.org/fr/forum/v ... 662#p81393
de Pierre-Yves Samyn dont j'ai déjà repris "l'architecture" du formulaire par le biais d'un "truc", à savoir une table dont le seul but est de récolter le choix fait dans la liste ; cela fonctionne très bien avec un bouton situé dans le sous-formulaire qui actualise ce dernier après avoir effectué le choix dans la liste (située dans le formulaire principal) ;
mais, par un souci de rapidité (et "d'élégance"), j'aimerais que ledit sous-formulaire s'actualise automatiquement, une fois le choix dans la liste fait ; malheureusement, mes faibles connaissances en macro ne me permettent pas d'adapter le code proposé par Mr Samyn (ou une autre alternative) qui est le suivant :
En ce qui concerne ma base, la liste déroulante en question est dans le "MainForm" du formulaire "Consultations" et elle est alimentée par les champs "idPatient", "Nom" et "Prenom" de la table "Patients" ; c'est ce premier champ qu'elle récupère dans la table "selectPatient" (le fameux truc) dans le champ "Selection" ; ce dernier fait le lien avec le champ "NoPatient" dans la table "Consultations" et le sous-formulaire dont l'actualisation par macro m'intéresse.
Vous remerciant d'avance –
bien cordialement
Mon problème c'est d'actualiser un sous formulaire à partir d'un choix fait dans une liste déroulante – topos maintes fois traité au sein de ce forum et dont j'ai essayé de m'inspirer et plus concrètement de ce fil de discussion :
https://forum.openoffice.org/fr/forum/v ... 662#p81393
de Pierre-Yves Samyn dont j'ai déjà repris "l'architecture" du formulaire par le biais d'un "truc", à savoir une table dont le seul but est de récolter le choix fait dans la liste ; cela fonctionne très bien avec un bouton situé dans le sous-formulaire qui actualise ce dernier après avoir effectué le choix dans la liste (située dans le formulaire principal) ;
mais, par un souci de rapidité (et "d'élégance"), j'aimerais que ledit sous-formulaire s'actualise automatiquement, une fois le choix dans la liste fait ; malheureusement, mes faibles connaissances en macro ne me permettent pas d'adapter le code proposé par Mr Samyn (ou une autre alternative) qui est le suivant :
Code : Tout sélectionner
Sub PysActualiser(PysEvt as object)
dim PysList as object, PysForm as object
dim PysSQL as string, PysChoix as string
PysList = PysEvt.source 'La liste déroulante
PysChoix = PysList.SelectedItem 'Choix fait dans la liste
PysForm = PysList.model.Parent 'On "remonte" au parent (le formulaire)
'SELECT T_FILM.*, T_GENRE.* FROM T_FILM, T_GENRE WHERE T_FILM.id_genre = T_GENRE.id_genre AND T_GENRE.genre = 'comique'
'Concaténation avec le choix fait dans la liste
PysSQL = "SELECT T_FILM.*, T_GENRE.* FROM T_FILM, T_GENRE WHERE T_FILM.id_genre = T_GENRE.id_genre AND T_GENRE.genre ='" + PysChoix + "'"
[/i]PysForm.command = PysSQL 'Redéfinition de la source du formulaire
PysForm.reload 'Recharge le formulaire
End Sub
Vous remerciant d'avance –
bien cordialement