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 :

[WD 11] besoin d'aide pour une requête


Sujet :

WinDev

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut [WD 11] besoin d'aide pour une requête
    bonjour
    j'ai une fiche ou il y'a une table qui contient plusieurs champs, ou il y'a deux champs site et qualif qui sont des clé et deux combo site et qualification et un bouton recherche, bon j'ai fait une requête (requête simplifié par assistant) de filtre la table selon valeurs dans les deux combo, c'est à dire si je sélectionne la combo site et/ou la combo qualification dans la table je dois afficher seulement les agents qui ont pour site et/ou qualification des combo et voici le code de la requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    SELECT 
    	info.matricule AS matricule,	
    	info.nom AS nom,	
    	info.cin AS cin,	
    	info.date_naiss AS date_naiss,	
    	info.sexe AS sexe,	
    	info.cnss AS cnss,	
    	info.telephone1 AS telephone1,	
    	info.telephone2 AS telephone2,	
    	info.site_travail AS site_travail,	
    	info.situation_civile AS situation_civile,	
    	info.qualification AS qualification,	
    	info.experience AS experience,	
    	info.etat AS etat,	
    	info.rib AS rib,	
    	info.situation AS situation,	
    	info.age AS age,	
    	info.date_emb AS date_emb,	
    	info.anci AS anci,	
    	info.num AS num,	
    	info.nbre_enf AS nbre_enf,	
    	info.adresse AS adresse,	
    	info.nbre_contracts AS nbre_contracts,	
    	info.ancian_mois AS ancian_mois,	
    	info.ancian_jrs AS ancian_jrs,	
    	info.depot_cnss AS depot_cnss,	
    	info.cin_le AS cin_le,	
    	info.etranger AS etranger
    FROM 
    	info
    WHERE 
    	info.site_travail LIKE {Paramsite}
    	AND	info.qualification LIKE {Paramqualif}
    ORDER BY 
    	matricule ASC
    et voici le code du bouton recherche qui doit faire le filtre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    paramsite est une chaîne=COMBO_Sites..ValeurAffichée
    paramqualif est une chaîne=COMBO_Qualification..ValeurAffichée
     
    HExécuteRequête(REQ_Requête_sitequalif,hRequêteDéfaut, paramsite, paramqualif)
    TableAffiche(TABLE)
    mais le problème rien ne se filtre toujours les même enregistrement
    SVP pouvez vous m'aider à réaliser se filtrage
    merci

  2. #2
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    essaie de tester ta requete via le debogueur "GO", et regardes si tu as les bon resultats.
    Si oui, alors, l'erreur vient forcément de ton code et ta requete est bonne.

  3. #3
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par Arasen Voir le message
    essaie de tester ta requete via le debogueur "GO", et regardes si tu as les bon resultats.
    Si oui, alors, l'erreur vient forcément de ton code et ta requete est bonne.
    aucun enregistrements, SVP comment le regler et faire le filtre

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    Es tu sur d'avoir bien utilisé tes operateurs? "LIKE"?

  5. #5
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par Arasen Voir le message
    Es tu sur d'avoir bien utilisé tes operateurs? "LIKE"?
    voici le code de la requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    SELECT 
    	info.matricule AS matricule,	
    	info.nom AS nom,	
    	info.cin AS cin,	
    	info.date_naiss AS date_naiss,	
    	info.sexe AS sexe,	
    	info.cnss AS cnss,	
    	info.telephone1 AS telephone1,	
    	info.telephone2 AS telephone2,	
    	info.site_travail AS site_travail,	
    	info.situation_civile AS situation_civile,	
    	info.qualification AS qualification,	
    	info.experience AS experience,	
    	info.etat AS etat,	
    	info.rib AS rib,	
    	info.situation AS situation,	
    	info.age AS age,	
    	info.date_emb AS date_emb,	
    	info.anci AS anci,	
    	info.num AS num,	
    	info.nbre_enf AS nbre_enf,	
    	info.adresse AS adresse,	
    	info.nbre_contracts AS nbre_contracts,	
    	info.ancian_mois AS ancian_mois,	
    	info.ancian_jrs AS ancian_jrs,	
    	info.depot_cnss AS depot_cnss,	
    	info.cin_le AS cin_le,	
    	info.etranger AS etranger
    FROM 
    	info
    WHERE 
    	info.site_travail LIKE {Paramsite}
    	AND	info.qualification LIKE {Paramqualif}
    ORDER BY 
    	matricule ASC
    dans le test j'ai mis les paramétres de filtres comme ils sont dans la base

  6. #6
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    WHERE
    info.site_travail LIKE {Paramsite}
    AND info.qualification LIKE {Paramqualif}

    Tout me semble Ok avec le code; ecoute, fais un test avec des parametres réel, comme ils sont exactement dans ta base, et essaie de voir si ça marche.

  7. #7
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    bon, j'ai changer le AND par OR, ou niveau du test sa marche, mais au niveau du code de bouton de recherche non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    paramsite est une chaîne=COMBO_Sites..ValeurAffichée
    paramqualif est une chaîne=COMBO_Qualification..ValeurAffichée
    HExécuteRequête(REQ_Requête_sitequalif,hRequêteDéfaut,paramsite,paramqualif)
    TableAffiche(TABLE)

  8. #8
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    OH LA!!!
    Si ta requete a besoin d'un AND, alors qu'il en soit ainsi!
    Ne le change pas contre un OR!
    Tout depends quels sont les parametres que tu passes!
    Si ces conditions sont respectés, alors tu obtiendras le bon resultat!

  9. #9
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    non elle ne marche ni avec le AND, ni avec le OR
    j'ai changé car je veux trois critère de recherche
    1- chercher avec les deux conditions
    ou
    2- chercher seulement avec la première conditions
    ou
    3- chercher seulement avec la deuxième condition
    mais avec AND ou OR le code ne marche pas, malgré que avec le test de requête j'ai la bonne resultat

  10. #10
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    paramsite est une chaîne=COMBO_Sites..ValeurAffichée
    paramqualif est une chaîne=COMBO_Qualification..ValeurAffichée
    
    HExécuteRequête(REQ_Requête_sitequalif,hRequêteDéfaut, paramsite, paramqualif)
    TableAffiche(TABLE)

    1. Essaie d'utiliser une table memoire.
    2. Remplace hRequêteDéfaut par hAvecFiltre

  11. #11
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    paramsite est une chaîne=COMBO_Sites..ValeurAffichée
    paramqualif est une chaîne=COMBO_Qualification..ValeurAffichée
    HExécuteRequête(REQ_Requête_sitequalif,hAvecFiltre ,paramsite,paramqualif )
    TableAffiche(TABLE)
    toujours non

  12. #12
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    Essaie ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    
    paramsite est une chaîne=COMBO_Sites..ValeurAffichée
    paramqualif est une chaîne=COMBO_Qualification..ValeurAffichée
    
    HExécuteRequête(REQ_Requête_sitequalif, hAvecFiltre, paramsite, paramqualif)
    FichierVersTableMémoire(TABLE_TableMemoire, REQ_Requête_sitequalif)
    TableAffiche(<Nom de ta TableMemoire>)

    Bonne Chance!

  13. #13
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    Oops!

    Desolé!


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    
    FichierVersTableMémoire(<Nom de ta TableMemoire>, REQ_Requête_sitequalif)
    TableAffiche(<Nom de ta TableMemoire>)

  14. #14
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    j'ai essayé se code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    paramsite est une chaîne=COMBO_Sites..ValeurAffichée
    paramqualif est une chaîne=COMBO_Qualification..ValeurAffichée
    HExécuteRequête(REQ_Requête_sitequalif,hAvecFiltre ,paramqualif ,paramsite)
    FichierVersTableMémoire(TABLE, REQ_Requête_sitequalif)
    TableAffiche(TABLE)
    mais j'ai erreur

    Erreur à la ligne 11 du traitement Clic sur BTN_Chercher.
    Vous avez appelé la fonction FichierVersTableMémoire.
    Commande invalide pour le champ TABLE car c'est une Table Fichier
    (cette commande n'est valide que sur les Listes, Tables et Combos mémoire).


    Informations techniques

    Projet : Gestion des ressources humaines

    Dump de l'erreur du module <WD110OBJ.DLL> <11.00Esf>.

    - Appel WL :
    Traitement de <FEN_Table_info_recherche.BTN_Chercher>, ligne <11>, thread <0>
    Fonction <FichierVersTableMémoire>, n° de syntaxe <0>

    - Niveau : erreur fatale (EL_FATAL)

    - Code erreur : 10043

    - Code erreur WD55 : 0

    - Pas de code d'erreur système

    - Pas de message d'erreur système

    - Que s'est-il passé ?
    Commande invalide pour le champ TABLE car c'est une Table Fichier
    (cette commande n'est valide que sur les Listes, Tables et Combos mémoire).

    - Infos de debug :
    Fonction (1,172)

    - Infos attachées :
    EIT_DATEHEURE : 24/12/2008 12:35:22
    EIT_PILEWL :
    Clic sur BTN_Chercher (FEN_Table_info_recherche.BTN_Chercher), ligne 11

    - Identifiant dans le .err : 10043


    Assistance

    -Vérifiez Le type du champ passé en paramètre (le choix fichier/mémoire s'effectue sous l'éditeur)
    -Pour ajouter une ligne de saisie dans une table, utilisez TableAjoute()


  15. #15
    Membre régulier
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Points : 108
    Points
    108
    Par défaut
    Juste une vérification avant de tout changer.

    Va dans le code de ta table au niveau initialisation et regarde si tes paramètres ne test ne sont pas codés en dur...

  16. #16
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    non, il n'y a pas codification en dure dans le code de la table
    sinon est ce que je peux utiliser hfiltre avec les deux conditions des deux combo, SVP j'ai besoin d'une solutions

  17. #17
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    mon problème c'est au niveau de l'appel de la requête au niveau du bouton recherche et je n'arrive pas à le résoudre

  18. #18
    Membre du Club
    Inscrit en
    Octobre 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2008
    Messages : 88
    Points : 66
    Points
    66
    Par défaut
    Tu as cette erreur parce que tu utilises une table fichier. il faut que tu la remplace par une table memoire.

  19. #19
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    478
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2005
    Messages : 478
    Points : 89
    Points
    89
    Par défaut
    bonjour
    Citation Envoyé par Arasen Voir le message
    Tu as cette erreur parce que tu utilises une table fichier. il faut que tu la remplace par une table memoire.
    comment le faire sans rien perdre (les données qui sont dans la table)
    mecri

  20. #20
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 206
    Points : 110
    Points
    110
    Par défaut
    as tu essayé de passer tes parametres en durs?
    de plus si tu utilises l'opérateur LIKE c'est que tu souhaites d’effectuer une comparaison partielle, donc tu dois avoir (généralement mais cela peut varier selon les moteurs de SGBD) les caractères
    %
    et/ou
    _
    dans ta chaine.
    au sinon s'est équivalent a un =

    Jette un coup d'oeil sur la valeur des parametres de ton filtre, et saisie les directement sur l'éditeur de requete , c'est peut être une piste

    et comme te la dit Xsara 167 cv
    Va dans le code de ta table au niveau initialisation et regarde si tes paramètres ne test ne sont pas codés en dur...

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Besoin d'aide pour une requête de MAJ (modif. de car.)
    Par ptitscrat dans le forum Access
    Réponses: 5
    Dernier message: 22/03/2006, 17h27
  2. besoin d'aide pour une requête
    Par lipao17 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 04/01/2006, 16h55
  3. Besoin d'aide pour une requête SQL
    Par Borami dans le forum Langage SQL
    Réponses: 1
    Dernier message: 07/11/2005, 10h33
  4. Besoin d'aide pour une Requête SQL ...
    Par Kokito dans le forum Requêtes
    Réponses: 2
    Dernier message: 07/07/2004, 11h56
  5. besoin d'aide pour une requête
    Par Damien69 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 31/03/2004, 15h38

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