[Résolu] Liste deroulante de villes suivant un code postal
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.
-
- Fraîchement OOthentifié
- Messages : 2
- Inscription : 01 août 2023 16:16
[Résolu] Liste deroulante de villes suivant un code postal
Bonjour à toutes et à tous
Je suis entrain de créer une base de données qui doit me fournir, à partir d'un code postal saisi dans un champ d'un formulaire, la liste de toutes les villes correspondantes à de code postal pour que je puisse en saisir une.
Je suis débutant sur openoffice et je suis un peu ou même beaucoup perdu !!
Je sais faire avec Access mais pas avec openoffice
Merci de vos réponses
Je suis entrain de créer une base de données qui doit me fournir, à partir d'un code postal saisi dans un champ d'un formulaire, la liste de toutes les villes correspondantes à de code postal pour que je puisse en saisir une.
Je suis débutant sur openoffice et je suis un peu ou même beaucoup perdu !!
Je sais faire avec Access mais pas avec openoffice
Merci de vos réponses
windows 10 apache open office 4.1.14
-
- RespOOnsable forum
- Messages : 12231
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: Open Office Base de données liste deroulante
Bonjour et bienvenue,
Titre modifié pour plus de clarté
Toutes les questions dans cette section traitent de "OpenOffice Base de données"
Veillez à ne pas employer de terme implicite à l'avenir.
Un titre clair et explicite n'est pas pour vous mais pour tous ceux effectuant des recherches dans ce forum.
Merci de faire un effort lors de vos prochaines questions.
Titre modifié pour plus de clarté
Toutes les questions dans cette section traitent de "OpenOffice Base de données"
Veillez à ne pas employer de terme implicite à l'avenir.
Un titre clair et explicite n'est pas pour vous mais pour tous ceux effectuant des recherches dans ce forum.
Merci de faire un effort lors de vos prochaines questions.
-
- Grand Maître de l'OOffice
- Messages : 16960
- Inscription : 03 mars 2006 16:02
- Localisation : Venise verte
Re: Liste deroulante de villes suivant un code postal
Bonjour,
Peux-tu joindre ta première ébauche de la base ?
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
-
- Fraîchement OOthentifié
- Messages : 2
- Inscription : 01 août 2023 16:16
Re: Liste deroulante de villes suivant un code postal
Bonjour
Des précisions :
Lors d'une manifestation, je veux connaitre d'où viennent les visiteurs. Pour cela , je saisi le code postal et si ce code commencent par 11 je veux pouvoir enregistrer dans ma tabme enregistrement :
le code postal
le numéro du département
le nom du département
le nom de la commune
et le nom du pays audois dans le quel se trouve la commune
PS 2 communes peuvent avoir le même code postal et appartenir à des pays audois différents
Des précisions :
Lors d'une manifestation, je veux connaitre d'où viennent les visiteurs. Pour cela , je saisi le code postal et si ce code commencent par 11 je veux pouvoir enregistrer dans ma tabme enregistrement :
le code postal
le numéro du département
le nom du département
le nom de la commune
et le nom du pays audois dans le quel se trouve la commune
PS 2 communes peuvent avoir le même code postal et appartenir à des pays audois différents
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
windows 10 apache open office 4.1.14
-
- IdOOle de la suite
- Messages : 25184
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: Liste deroulante de villes suivant un code postal
Salut,
Depuis 15 ans qu'existe ce forum, cette question passe régulièrement :
search.php?st=0&sk=t&sd=a&sr=topics&key ... id%5B%5D=9
Le tutoriel sur les listes déroulantes montre ces aspects également : viewtopic.php?f=29&t=14662
Une solution macro clé-en-main a été fournie sous la forme d'un suprême de code : viewtopic.php?t=42247
Depuis 15 ans qu'existe ce forum, cette question passe régulièrement :
search.php?st=0&sk=t&sd=a&sr=topics&key ... id%5B%5D=9
Le tutoriel sur les listes déroulantes montre ces aspects également : viewtopic.php?f=29&t=14662
Une solution macro clé-en-main a été fournie sous la forme d'un suprême de code : viewtopic.php?t=42247
-
- Grand Maître de l'OOffice
- Messages : 16960
- Inscription : 03 mars 2006 16:02
- Localisation : Venise verte
Re: Liste deroulante de villes suivant un code postal
Peux-tu tester le formulaire simplifié de cette Base pour voir si son utilisation convient dans les situations pratiques ?
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
-
- Membre OOrganisé
- Messages : 71
- Inscription : 30 mars 2012 16:13
- Localisation : Savoie, France
Re: Liste deroulante de villes suivant un code postal
Bonjour,
@nanardzozo :
Sous LibreOffice, je n'ai pas accès aux macros de votre fichier : plantage systématique de l'application, mais peu importe.
Remarque de structure : dans la table enregistrement, vous ne devriez pas avoir à saisir département et pays puisque ceci est invariable : le département 11 est toujours le même et il est en France. Ces informations devraient être éventuellement ajoutées dans la table 'les5pays' et récupérées au besoin.
Et donc, il s'agit de saisir un code postal dans un contrôle et de filtrer le contenu de la liste déroulante à côté pour qu'elle contienne les communes correspondantes à ce CP (à partir des informations dans la table 'les5pays') ? Dans Access©, à ma connaissance, dans les requêtes, on peut créer un critère issu d'un contrôle du formulaire (ici le code postal). Avec OpenOffice, on ne peut pas ! Donc, il faut faire plus compliqué mais on trouve de nombreux exemples.
En fait, on est obligé de fabriquer la requête SQL, source de la liste déroulante, avec une macro qui va récupérer le code postal comme critère, puis l'"injecter" comme source de la liste déroulante. Sur l'évènement 'Changement' ou 'Perte de focus' du contrôle où l'on saisit le code postal, on va donc déclencher cette macro qui va actualiser la liste déroulante.
Ci-dessous un exemple de code :
Et votre fichier avec cette seule partie de code.
@nanardzozo :
Sous LibreOffice, je n'ai pas accès aux macros de votre fichier : plantage systématique de l'application, mais peu importe.
Remarque de structure : dans la table enregistrement, vous ne devriez pas avoir à saisir département et pays puisque ceci est invariable : le département 11 est toujours le même et il est en France. Ces informations devraient être éventuellement ajoutées dans la table 'les5pays' et récupérées au besoin.
Et donc, il s'agit de saisir un code postal dans un contrôle et de filtrer le contenu de la liste déroulante à côté pour qu'elle contienne les communes correspondantes à ce CP (à partir des informations dans la table 'les5pays') ? Dans Access©, à ma connaissance, dans les requêtes, on peut créer un critère issu d'un contrôle du formulaire (ici le code postal). Avec OpenOffice, on ne peut pas ! Donc, il faut faire plus compliqué mais on trouve de nombreux exemples.
En fait, on est obligé de fabriquer la requête SQL, source de la liste déroulante, avec une macro qui va récupérer le code postal comme critère, puis l'"injecter" comme source de la liste déroulante. Sur l'évènement 'Changement' ou 'Perte de focus' du contrôle où l'on saisit le code postal, on va donc déclencher cette macro qui va actualiser la liste déroulante.
Ci-dessous un exemple de code :
Code : Tout sélectionner
Sub FiltreCP (evt as Object)
On Error Goto sortie
Dim vDoc as Object, vForm1 AS OBJECT, ctList as object, vueCtList as Object, vCritere as Object
Dim StrSql as string, StCP as string
vDoc = thiscomponent
vForm1 = evt.Source.Model.Parent 'permet d'être utilisé quelque soit le formulaire d'appel
ctList = vForm1.getByName("ListeVille") 'la liste déroulante
vCritere = vForm1.getByName("CPSaisi") 'le contrôle code postal
StCP = vCritere.Text 'la valeur du contrôle CP
StrSql = "SELECT ""NomCommune"", ""cp"" FROM ""les5pays"" WHERE ""cp"" = " & StCP 'la requête SQL avec le critère du CP grâce à la variable StCP
ctList.ListSourceType=com.sun.star.form.ListSourceType.SQL
ctList.ListSource=Array(StrSQL) 'on attribut à la source de la liste notre requête SQL
ctList.Refresh 'on rafraîchit
vueCtList = vDoc.CurrentController.getControl(ctList)
vueCtList.selectItemPos(vueCtList.SelectedItemPos, False) 'remise à zéro de la liste déroulante
Exit Sub
sortie:
MsgBox(Error, 16)
End Sub
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 7.6.4.2 sur Ubuntu 23.10 GNOME (version officielle). Base en frontale d'une base MySQL ; échec liaison directe => liaison JDBC.
-
- RespOOnsable forum
- Messages : 12231
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
-
- Membre OOrganisé
- Messages : 71
- Inscription : 30 mars 2012 16:13
- Localisation : Savoie, France
Re: Liste deroulante de villes suivant un code postal
Bonjour !
Entendu. Mais la question est posée dans cette rubrique et, à mon humble connaissance, la réponse passe par du code.
Quelle est donc la solution pour apporter l'aide attendue par le correspondant ?
Entendu. Mais la question est posée dans cette rubrique et, à mon humble connaissance, la réponse passe par du code.
Quelle est donc la solution pour apporter l'aide attendue par le correspondant ?
LibreOffice 7.6.4.2 sur Ubuntu 23.10 GNOME (version officielle). Base en frontale d'une base MySQL ; échec liaison directe => liaison JDBC.
-
- Membre prOOscrit
- Messages : 88
- Inscription : 18 juin 2023 15:10
Re: Liste deroulante de villes suivant un code postal
@ arverne73
Bonjour, et merci pour avoir eu l'idée.
Tout en essayant de me conformer au dictat de ce forum, c-à-d éviter le code si possible, quitte à me faire enfermer par un geôlier, j'aimerais vous inviter à consulter cette méthode (avec liste déroulante et sélection) viewtopic.php?t=67558.
@ bidouille
Je vous demande humblement si vous pouviez ne pas condamner a priori un paradigme proposé par analogie...
Bien à vous
nounours2
Bonjour, et merci pour avoir eu l'idée.
Tout en essayant de me conformer au dictat de ce forum, c-à-d éviter le code si possible, quitte à me faire enfermer par un geôlier, j'aimerais vous inviter à consulter cette méthode (avec liste déroulante et sélection) viewtopic.php?t=67558.
@ bidouille
Je vous demande humblement si vous pouviez ne pas condamner a priori un paradigme proposé par analogie...
Bien à vous
nounours2
Libre Office 6.0.7 sous Ubuntu 18.04
-
- RespOOnsable forum
- Messages : 12231
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: Liste deroulante de villes suivant un code postal
L'auteur n'ayant plus réapparu depuis plus d'un mois, je clôture.Dernière visite : 03 août 2023 15:55
Si jamais il revient un jour, il pourra le rouvrir :
ftopic52748-reouverture-de-question-fermee.html