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 :

Requete bloquante lente [WD14]


Sujet :

WinDev

  1. #1
    Membre éprouvé Avatar de WDKyle
    Homme Profil pro
    Analyste-Programmeur
    Inscrit en
    Septembre 2008
    Messages
    1 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-Programmeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 200
    Points : 962
    Points
    962
    Par défaut Requete bloquante lente
    Bonjour à tous ! J'espere que vous aller bien sous ce beau soleil (enfin chez moi il fais beau ^^)

    J'explique mon soucis, j'ai 2 requêtes : Req_Select_Villes et Req_Villes comme ceci :

    Req_Select_Villes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT 
    	Code_Postaux.Ville AS Ville
    FROM 
    	Code_Postaux
    WHERE 
    	Code_Postaux.[Code postal] = {Param1}
    ORDER BY 
    	Ville ASC

    Req_Villes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT 
    	Code_Postaux.Ville AS Ville
    FROM 
    	Code_Postaux
    ORDER BY 
    	Ville ASC

    Elles sont appelées dans 2 ComboBox en saisi, SAI_Saisi_CP_Auditeurs et SAI_Saisi_Ville_Auditeurs:



    Dont voici les codes :

    SAI_Saisi_CP_Auditeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // A chaque modification de SAI_Saisi_CP_Auditeurs
    REQ_Select_Ville.Param1 = SAI_Saisie_CP_Auditeurs
    HExécuteRequête(REQ_Select_Ville, hRequêteDéfaut)
    SAI_Saisie_Ville_Auditeurs..FichierParcouru = "REQ_Select_Ville"
    ListeAffiche(SAI_Saisie_Ville_Auditeurs, taDébut)
     
    // Sélection d'une ligne de SAI_Saisi_CP_Auditeurs
    REQ_Select_Ville.Param1 = SAI_Saisie_CP_Auditeurs
    HExécuteRequête(REQ_Select_Ville, hRequêteDéfaut)
    SAI_Saisie_Ville_Auditeurs..FichierParcouru = "REQ_Select_Ville"
    ListeAffiche(SAI_Saisie_Ville_Auditeurs, taDébut)
    SAI_Saisi_Ville_Auditeurs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // A chaque modification de SAI_Saisi_Ville_Auditeurs
    SI PAS SAI_Saisie_Ville_Auditeurs..FichierParcouru = "REQ_Villes" ALORS
    	HExécuteRequête(REQ_Villes, hRequêteDéfaut)
    	SAI_Saisie_Ville_Auditeurs..FichierParcouru = "REQ_Villes"
    FIN
     
    REQ_Select_Code_Postal.Param1 = SAI_Saisie_Ville_Auditeurs
    HExécuteRequête(REQ_Select_Code_Postal, hRequêteDéfaut)
    SI HLitPremier(REQ_Select_Code_Postal, hSansRafraîchir) = Vrai ALORS
    	SAI_Saisie_CP_Auditeurs = REQ_Select_Code_Postal.Code_postal
    FIN

    Voila donc le principe est que la combo SAI_Saisi_CP_Auditeurs a pour contenu à la base une requete qui lui renvoi tous les codes postaux de France. Lorsque je selectionne un CP cela me renvoi dans la combo SAI_Saisi_Ville_Auditeurs la liste des communes correspondant au CP, jusque là tout va bien ? ^^

    Par defaut également la combo SAI_Saisi_Ville_Auditeurs a pour contenu la requete Req_Villes qui liste donc toutes les communes de France. Et si je selectionne une villes sans entrer de Code postal cela renvoi automatiquement le code postal correspondant à la ville dans la combo Code postal, ca va toujours ?

    De ce coté, là tout marche, le probleme est que, comme vous pouvez le voir dans les codes des deux combo je fais des changement de FichierParcouru pour jongler entre les communes correspondant a un code postal et toutes les communes de France.

    Et le soucis c'est que si je suis en FichierParcouru "Req_Select_Villes" et que je repasse en "Req_Villes" (donc lorsque que je modifi la saisi du combo des Villes) et bien si par exemple il y a marquer comme ville MONTARGIS je que je l'efface petit a petit à un moment la requete Req_Villes s'execute et me bloc la saisi ce qui fige le bazarre :s et j'aimerais que ce soit fluide vous voyez ...?

    Alors j'ai essayé de mettre directement le Fichier repertoriant les CP et Villes mais je n'arrive pas à changer de FichierParcouru entre un Fichier et une Requête ...

    Bon j'ai écrit un romain là ... j'espère que j'ai donner un max d'infos qui pourra faire que vous aller pouvoir m'aider.

    Merci !

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonsoir,
    Je n'utilise pas HF, donc je risque de répondre à côté, mais bon...
    Au vue de ce que tu énonces, je pense que tu peux te passer des requêtes, et les remplacer par un filtre. Ainsi tu n'as plus besoin de changer le fichier parcourus, de relancer la requête... tout est géré en interne par Windev.

    Tatayo.

  3. #3
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Ah t'es pas obligé de faire comme ça...

    Sais tu que sou HF si tu passe null a un argument il ne va pas exécuter le test ?

    Ainsi tu as assez de ta requête Req_Select_Villes.
    Patrick Catella

    Je ne réponds pas aux messages privés si ceux ci suivent un sujet. Il est préférable pour tous de poursuivre la discussion dans le sujet d'origine.

    Je suis Concepteur développeur Windev (10 ans) et Windev mobile (4 ans) en recherche d'emploi. J'etudie toute proposition

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Bonjour damien.c, ainsi que tatayo et mogwai162,

    Tu as bien fait d'expliquer précisément ton souci, merci.

    Citation Envoyé par damien.c Voir le message

    Et le soucis c'est que si je suis en FichierParcouru "Req_Select_Villes" et que je repasse en "Req_Villes" (donc lorsque que je modifi la saisi du combo des Villes) et bien si par exemple il y a marquer comme ville MONTARGIS je que je l'efface petit a petit à un moment la requete Req_Villes s'execute et me bloc la saisi ce qui fige le bazarre :s et j'aimerais que ce soit fluide vous voyez ...?
    Tu n'as pas besoin de ré-exécuter la requête "REQ_Villes" puisque, a priori, son résultat est constant (on ne crée pas de nouvelles villes toutes les minutes). Donc, une seule exécution devrait suffire à l'ouverture de la fenêtre, ensuite le jeu de données est disponible de façon permanente.
    _

  5. #5
    Membre éprouvé Avatar de WDKyle
    Homme Profil pro
    Analyste-Programmeur
    Inscrit en
    Septembre 2008
    Messages
    1 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-Programmeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 200
    Points : 962
    Points
    962
    Par défaut
    Ahhh oui pas besoin de ré-executer ! merci à tous

    J'essai dans la journée et je vous tiens au courant !

  6. #6
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Citation Envoyé par =JBO= Voir le message
    Tu n'as pas besoin de ré-exécuter la requête "REQ_Villes" puisque, a priori, son résultat est constant (on ne crée pas de nouvelles villes toutes les minutes). Donc, une seule exécution devrait suffire à l'ouverture de la fenêtre, ensuite le jeu de données est disponible de façon permanente.
    Effectivement ...
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  7. #7
    Membre éprouvé Avatar de WDKyle
    Homme Profil pro
    Analyste-Programmeur
    Inscrit en
    Septembre 2008
    Messages
    1 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-Programmeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 200
    Points : 962
    Points
    962
    Par défaut
    Oui mais bon, dans mon fichier HF, elles ne changent pas.

    Au pire, une MAJ et voila mais çà ne change pas toutes les secondes.

    EDIT : J'ai donc mis l'execution de la réquête dans le code d'initialisation de la combo Villes et c'est niquel ! Merci encore à tous

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

Discussions similaires

  1. Problème de requete trop lente , je cherche une alternative
    Par mobscene dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 02/05/2007, 10h39
  2. pb requete trop lente.(tables sans relation)
    Par zeloutre dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 27/04/2007, 08h48
  3. requete trop lente
    Par ob1knob dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 16/03/2007, 18h21
  4. [Hibernate 3] [Sybase] Requete bloquante
    Par CharlSka dans le forum Hibernate
    Réponses: 5
    Dernier message: 07/02/2007, 18h21
  5. [FB 1.5.2] Requetes tres lentes via VPN
    Par gudul dans le forum Connexion aux bases de données
    Réponses: 8
    Dernier message: 05/01/2006, 18h52

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