IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Comment afficher plusieurs valeurs dans un champ Table lié à une requête


Sujet :

WinDev

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut Comment afficher plusieurs valeurs dans un champ Table lié à une requête
    Bonjour tout le monde,

    J'ai un petit problème avec mon champ table. C'est une table lié à une requête.
    J'ai un combo avec des noms dedans. Je choisis un nom et je clique sur un bouton "Ajouter" pour afficher ce nom dans ma table. Jusque là OK je sais faire, avec la requête et sur le clic du bouton "Ajouter" je mets ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TableAffiche(TABLE_REQ_Choix_De_Mail,taCourantEnreg)
    Maintenant j'aimerai garder cette valeur et afficher une autre valeur (un autre nom) en plus à la suite dans cette Table mais à chaque fois, il me supprime l'ancien nom et m'affiche le nouveau dessus.

    Quelqu'un a une idée de comment afficher les autres noms sélectionnées à la suite ?

    J'ai aussi ça comme code dans ma table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaSource.pIdentité = COMBO_Nom
    Merci d'avance,
    Térence01

  2. #2
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    Salut,

    Je suis pas sûr d'avoir bien compris mais à la place d'un tableAffiche(), tu voudrais pas utiliser un tableAjoute()?

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut
    Un TableAjoute() ne fait rien du tout.

    Ce n'est pas grave j'ai changé de méthode et j'ai réussi à avoir ce que je voulais avec une table mémoire.

    Merci de ton aide quand même.

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    Alors j'ai du mal comprendre.

    Tu as ton code final que je vois ce que tu voulais, stp?

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut
    Non tu devais avoir raison mais là moi ça fonctionnait pas ^^

    mon code final est dans une table mémoire maintenant et plus dans une table liée à une requête, le voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SI COMBO_Nom..ValeurAffichée = "" ALORS
    	RETOUR
    FIN
     
    POUR TOUTE LIGNE DE TABLE_Adresse_Mail
    	SI COMBO_Nom..ValeurAffichée = COL_Destinataires..ValeurAffichée ALORS
    	Info("Vous avez déjà inséré ce destinataire à la liste")
    	RETOUR
    	FIN	
    FIN
     
    TableAjouteLigne(TABLE_Adresse_Mail,COL_Destinataires)
    TABLE_Adresse_Mail.COL_Destinataires = COMBO_Nom..ValeurAffichée

    Cela me permet d'ajouter les uns en dessous des autres les noms des clients.

    Par contre je n'arrive pas à les supprimer de la table mémoire, même avec TableSupprime() et TableSuprimeSelect()

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    Tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SI TableCherche(COL_Destinataires, COMBO_Nom..ValeurAffichée, Vrai) = -1 ALORS
    	TableAjouteLigne(TABLE_Adresse_Mail,COL_Destinataires)
    	TABLE_Adresse_Mail.COL_Destinataires = COMBO_Nom..ValeurAffichée
    SINON
    	Info("Vous avez déjà inséré ce destinataire à la liste")
    	RETOUR
    FIN
    C'est plus rapide (suivant la taille de ta table et peut-être plus lisible

    Tu as ton code de suppression? Il te met une erreur? Il ne fait rien?

    Et en debug step-by-step?

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut
    J'ai repris ton code, c'est vrai que c'est plus lisible mais il ne fait pas ma première partie de mon code, celle-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SI COMBO_Nom..ValeurAffichée = "" ALORS
    	RETOUR
    FIN
    pas grave je l'ai rajouté juste au dessus et ça fonctionne niquel !

    Sinon pour mon code de suppression j'utilise ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TableSupprimeSelect(TABLE_Adresse_Mail)
    ou encore ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TableSupprime(TABLE_Adresse_Mail)
    Et dans les 2 cas rien ne se passe, aucune erreur détecté, c'est comme si je cliquais dans le vide.

  8. #8
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    Effectivement, j'avais oublié cette partie du code.

    Concernant le tableSupprime(), as-tu essayé tableSupprime(TABLE_Adresse_Mail,1)? (juste pour essayer, je sais que tu ne veux pas supprimer le premier, mais juste pour voir le résultat).

  9. #9
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut
    C'est bizarre ça fonctionne parfaitement comme ça !
    ça me met même les lignes au dessus à la bonne place, ce que je veux dire c'est que ça ne me laisse pas une ligne vide. Mais je ne peux toujours pas supprimer ma ligne sélectionnée

    Bizarre Bizarre ...

  10. #10
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    Bon, on avance.
    Et si tu fais un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tableSupprime(TABLE_Adresse_Mail,TABLE_Adresse_Mail)
    C'est pas propre mais ca permet de tester

  11. #11
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut
    Salut !

    Désolé je faisais le pont donc j'ai pas pu tester avant ta ligne de code.

    Et bien je viens de la tester et ça marche parfaitement !
    Les adresses sont supprimées et la ligne aussi, je n'ai même pas de ligne vide en plein milieu si je rechoisis une autre valeur, c'est génial !

    Mais alors pourquoi ça fonctionne comme ça et pas avant ?

    Et si je mets ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TableSupprime(TABLE_Adresse_Mail,TABLE_Adresse_Mail.COL_Destinataires
    Et bah ça fonctionne pas, enfin c'est pas grave ^^

    Merci Simeonn pour la réponse !

  12. #12
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2006
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2006
    Messages : 128
    Points : 170
    Points
    170
    Par défaut
    Salut,

    Tant mieux si ca fonctionne.

    Ta ligne ne fonctionne pas car le deuxième paramètre est l'indice de la ligne à supprimer. Là, tu lui envoies une colonne donc il ne sait pas quoi en faire.

    TableSupprimeSelect() Supprime le(s) élément(s) sélectionné(s). Si aucun n'est sélectionné, ca n'a aucune incidence. De même pour TableSupprime() sans 2ème paramètre

  13. #13
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 69
    Points : 50
    Points
    50
    Par défaut
    Ok d'accord !

    J'ai fini avec ce topic, je le mets en résolu.
    A une prochaine !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 11
    Dernier message: 11/07/2014, 12h47
  2. Plusieurs valeurs dans un champ
    Par Freyskeyd dans le forum Langage SQL
    Réponses: 3
    Dernier message: 13/12/2007, 22h03
  3. Réponses: 6
    Dernier message: 12/06/2007, 18h07
  4. Comment afficher plusieurs elements dans une meme alert()
    Par monphp dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/05/2007, 23h46
  5. récupérer plusieurs valeurs dans un champ hidden
    Par karimphp dans le forum Langage
    Réponses: 3
    Dernier message: 07/12/2006, 18h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo