|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : février 2003 Messages : 12 ![]() |
Bonjour,
Version : Windev Mobile 17 Plateforme : Android Mon problème Je souhaite récupérer la valeur d'une ligne sélectionnée dans une liste remplie par programmation. Explications Dans une fenêtre principale (Catégories), j'ai une liste (Liste_Cat) remplie par un fichier requête (affiche toutes les catégories) avec mémorisation sur la rubrique ID. A la sélection d'une ligne de cette liste, j'ouvre une autre fenêtre (Sous-Catégories) qui m'affiche les Sous-Catégories selon l'ID de la catégorie mémorisée. Jusque là tout va bien. Maintenant je voudrais ouvrir une autre fenêtre (Questions), qui affichera toutes les questions liées à la sous-catégories sélectionnée. Ce qui me pose problème, c'est que je ne sais pas comment mémoriser l'ID de la sous-catégorie (la sous-catégorie a aussi un champ ID) qui a été sélectionnée, car cette liste a été remplie par programmation, ce n'est pas comme pour une liste remplie par Fichier/Requete où l'on déclare la rubrique mémorisée. Si vous avez des pistes je suis preneur. S'il vous manque des infos pour la compréhension dîtes le moi. Merci. Thamis |
|
|
00
|
|
|
#2 | ||
|
Membre éprouvé
![]() Inscription : avril 2005 Messages : 158 ![]() |
Bonjour,
Vous pouvez utiliser la fonction gLien (elle semble être disponible sous Android). (voir la doc : http://doc.pcsoft.fr/fr-FR/?3029043) Dans la description de la liste, il faut cocher "retourne la valeur spécifiée avec la fonction gLien" (dans l'onglet "Détail"). Et dans le ListeAjoute, vous ajouter la fonction gLien avec l'ID en paramètre. Code :
|
||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : février 2003 Messages : 12 ![]() |
Merci djejackk,
C'est sympa d'avoir répondu si vite. Ta réponse m'a mis un peu sur le bon chemin, mais comme souvent la réadaptation est moins limpide. Tu me donnes comme code exemple : Code :
ListeAjoute(LISTE_MaListe, "Catégorie 1" + gLien(ID1)) Code :
ListeAjoute(LISTE_SsCat,REQ_SsCat.name + gLien(REQ_SsCat.id)) Thamis |
|
|
00
|
|
|
#4 | ||||
|
Membre éprouvé
![]() Inscription : avril 2005 Messages : 158 ![]() |
Je ne suis pas sûr d'avoir compris au final.
Le champ LISTE_SsCat est remplie par programmation ou est basé sur une requête ? Vous semblez utiliser une requête ("REQ_SsCat") pour la liste "LISTE_SsCat". Pourquoi passer par programmation ? Vous pouvez très bien indiquer directement que la liste "LISTE_SsCat" est basé sur la requête "REQ_SsCat". Ensuite, pour la mettre à jour en fonction du choix dans la liste principale, il suffit d'utiliser ListeAffiche. Code :
Code :
|
||||
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : février 2003 Messages : 12 ![]() |
Allez je reprends depuis le début pour être le plus clair possible
J'ai une table s_kb_category, dans laquelle j'ai trois champs id, parent_id et name. Le champ id est incrémental, parent_id permet une classification sous forme de sous-catégories.
Une fenêtre FEN_Categories avec un champ List_Categories qui est alimentée par une requête basée sur s_kb_category, requête crée par l'assistant de requête. Je mémorise la rubrique ID de ce champ liste. Cette requête me renvoie toutes les catégories dans ma liste. Dans le code Sélection d'une ligne List_Categories, je mémorise dans une variable (sParamid ) l'ID de la catégorie sélectionnée, puis j'ouvre une fenêtre FEN_SsCategories, ce qui me permet de réutiliser sParamid dans ma FEN_SsCategories. Dans ma FEN_SsCategories, j'ai une liste List_SsCategories qui doit m'afficher toutes les sous-catégories de la catégorie sélectionnée précédemment. Pour ce faire j'ai crée une requête en code SQL cette fois ci, qui utilise le paramètre sParamid. La requête : Code :
SELECT s_kb_category.id AS id, s_kb_category.parent_id AS parent_id, s_kb_category.name AS name FROM s_kb_category WHERE s_kb_category.parent_id <>0 AND s_kb_category.parent_id = {sParamid}
Lorsque je vais sélectionner une ligne de la liste List_SsCategories, je souhaite ouvrir une fenêtre FEN_Questions avec un champ List_Questions, qui va contenir toutes les questions en rapport avec cette sous-catégorie. Cela implique que je puisse mémoriser dans une variable sSsCatid l'ID de la sous-catégorie sélectionnée pour l'utiliser dans la requête qui va alimenter ma liste List_Questions. Je pense que la bonne route à prendre est celle de gLien, mais pour le moment je ne maîtrise pas cette fonctionnalité. Avant de me lancer dans la dernière étape, je fais juste une vérification par : sur Sélection d'une ligne de List_SsCategories pour être sûr que je récupère bien la bonne valeur. J'espère avoir apporté plus de clarté sur mon besoin. Thamis |
|
|
00
|
|
|
#6 | ||
|
Invité régulier
![]() Inscription : février 2003 Messages : 12 ![]() |
Bien en fait c'était très simple, en écrivant le déroulé et en lisant tranquillement l'aide de la fonction gLien et de Valeur mémorisée, j'ai trouvé qu'il faut simplement pour mon exemple, coder de cette façon :
Code :
Merci djejackk de l'aide indirect que vous m'avez apporté, vous m'avez mis sur la voie. Je vais prendre le temps aussi d'étudier la solution avec Listeaffiche et taRéExécuteRequête qui me semble bien plus optimisé que la mienne. Je débute alors je voudrais aller au bout de mon projet et ensuite travailler sur l'optimisation du produit fini. |
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com