|
Débuté par guest, 06 fév. 2006 14:26 - 8 réponses |
| |
| | | |
|
| |
Posté le 06 février 2006 - 14:26 |
Abandonnant l'analyse HF du fait de l'utilisation de PostGreSQl, j'ai un peu de mal à remplir mes combos via le code.
J'ai besoin de mettre la clé de ma table en tant qu'indice et le libellé dans la combo.
J'ai bien essayé d'utilisé le glien mais :
1) comment savoir si ma combo est correctement remplie ? 2) comment sélectionner la clé 6 sur ma combo
Voici le code qui ne marche pas (eventuellement le point 1 mais je suis pas sur
>>>> gApplication = Val( INILit ("DEFAUT", "Appli", "", fRepExe() + "\Toto.ini"))
gRequêteSQL = "SELECT app_id, app_libelle_application, app_chemin_et_nom_prefixe FROM applications" SI SQLExec(gRequêteSQL, "REQ_APPS") ALORS TANTQUE SQLAvance ("REQ_APPS") = 0 ResAjout est un booléen = ListeAjoute (ComboApplication, SQLLitCol("REQ_APPS",2)+ gLien (SQLLitCol("REQ_APPS",1))) SI gApplication = SQLLitCol("REQ_APPS",1) ALORS gApp_Chemin_et_Nom_Prefixe = SQLLitCol("REQ_APPS",3) FIN FIN SINON SQLInfoGene() Erreur("REQ_APPS, Code erreur : " + SQL.Erreur +RC+ SQL.MesErreur) FIN ComboApplication=gApplication // positionne sur l'appli par défaut
<<<< |
| |
| |
| | | |
|
| | |
| |
Posté le 06 février 2006 - 14:55 |
Bonjour, Tu devrais utiliser les combo de type table, celà te permet de mettre plusieurs colonnes dans la combo, ce qui est plus simple à gérer qu'avec la fonction glien. Dans ton exemple, tu peux mettre une colonne AppId et une Applibelle. Tu indiques que la colonne renvoyée est la colonne AppId. Le remplissage de la combo devient alors un simple SqlTable(), et pour sélectionner un identifiant particulier tu paux alors utiliser TableCherche et TableSelectPlus.
Frédéric. |
| |
| |
| | | |
|
| | |
| |
Posté le 06 février 2006 - 16:11 |
Excellent. Je vais tester.
Merci
Gaston |
| |
| |
| | | |
|
| | |
| |
Posté le 07 février 2006 - 12:08 |
Bonjour,
J'ai bien créé une combo de type Table avec 2 colonnes. Mais n'ayant pas préciser de Fichier parcouru, et pour cause puisque mon fichier, j'y accède en Odbc. Je n'arrive pas à préciser la rubrique mémorisée.
Gaston |
| |
| |
| | | |
|
| | |
| |
Posté le 07 février 2006 - 12:20 |
Ah ok, pas besoin de rubrique mémorisée, ca marche au poil.
Merci, ca simplifie la programmation
Gaston |
| |
| |
| | | |
|
| | |
| |
Posté le 07 février 2006 - 12:32 |
Pas besoin de passer par la propriété "colonne mémorisée", tu peux lire directement dans la "table" associée à la combo: MaCombo.IdAppli[MaCombo] te renvoie la valeur sélectionnée.
Frédéric. |
| |
| |
| | | |
|
| | |
| |
Posté le 07 février 2006 - 12:52 |
Encore un petit souci.
Lorsque je veux, en programmation, me positionner sur un n° appli par défaut, je fais :
ListeSelectPlus(ComboApplication,resultat)
ou resultat est calculé ainsi : resultat est un entier = TableCherche (cAppId, gApplication, Vrai , 1)
cAppId est ma premiere colonne de la combo gApplication vaut 3 resultat ramene 1
Tout ca est correct
Mais a l'affichage , je ne vois pas s'afficher le libellé. Par contre, si je déroule, je vois mon libellé sélectionné (en gris foncé)
J'aimerais avoir mon libellé sans avoir à dérouler.
Gaston |
| |
| |
| | | |
|
| | |
| |
Posté le 07 février 2006 - 13:01 |
Pour confirmer ma derniere question a propos de l'element sélectionner. Si je mets :
Erreur (ComboApplication.cAppId[ComboApplication])
il ramene bien 3 donc tout est bon sauf l'element qui ne s'affiche pas sur la combo à l"etat fermé.
Et si j'essaie de cliquer sur mon libellé apparaissant dans ma combo déroulée, il ne le ramene pas au dessus.
gaston |
| |
| |
| | | |
|
| | |
| |
Posté le 07 février 2006 - 16:03 |
Probleme résolu, j'avais oublié de remettre la rubrique affiché dans l'élément Combo.
Merci beaucoup |
| |
| |
| | | |
|
| | | | |
| | |
|