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 :

[WD9]TableAffiche dans un Thread ne fonctionne pas


Sujet :

WinDev

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 172
    Points : 69
    Points
    69
    Par défaut [WD9]TableAffiche dans un Thread ne fonctionne pas
    Bonjour,

    Le contenu d'une table est le résutat d'une requête paramétrée.
    Aprés l'éxécution de la requête, TableAffiche ne marche pas si le code fait parti d'un Tread, alors que cela fonctionne s'il s'agit d'une procédure classique.
    Pourquoi?
    Voici mon code de lancement du thread:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThreadExécute("Essai",threadNormal,Nouvelle_Procédure)
    et celui de ma procédure:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    PROCEDURE Nouvelle_Procédure()
    Fichier.Nom="X"
    HAjoute(Fichier)
    Fichier.Nom="Y"
    HAjoute(Fichier)
    HExécuteRequête(Requete2,hRequêteDéfaut,"X")
    TableAffiche(Table_Fichier)
    et le code SQL de la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Fichier.Nom AS Nom
     FROM Fichier
     WHERE Fichier.Nom = {Param1}
     ORDER BY Nom ASC
    NB/ cela marche s'il s'agit d'une requête non paramétrée.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 252
    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 252
    Points : 12 910
    Points
    12 910
    Par défaut
    Bonjour,
    Tu indiques que ça fonctionne avec une requête non paramétrée, donc à priori le problème viendrait plutôt de la requête que du tableAffiche().

    Est-ce que tu as essayé de tester le retour de hExecuteRequete(), pour voir si Windev te mettrait sur une piste ?

    Frédéric.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 172
    Points : 69
    Points
    69
    Par défaut
    Est-ce que tu as essayé de tester le retour de hExecuteRequete(), pour voir si Windev te mettrait sur une piste ?
    Oui, j'ai testé la fonction HnbEnr qui me donne bien le nombre d'enregistremnets escomptés.

    Merci

  4. #4
    Membre expérimenté Avatar de klbsjpolp
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 065
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 065
    Points : 1 322
    Points
    1 322
    Par défaut
    D'après moi ton problème c'est la copie de contexte. Chaque thread a son propre contexte hyperfile ce qui empêche les modifications concurrentes mais empêche aussi de partager les enregistrements lus entre plusieurs threads. À ma connaissance, tu dois bloquer ton interface pendant l'exécution du thread ou remplir ta table depuis ton thread. Je ne sais pas si ConstruitTableFichier existe en 9 mais il faudrait voir si elle peut être exécuté depuis un thread.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 172
    Points : 69
    Points
    69
    Par défaut
    Oui la fonction ConstruitTable Fichier existe, mais cela me parait un peut lourd. Ma requête contenant moins de 200 enregistrements, j'ai résolu mon problème en recopiant le réultats de la requête dans un fichier temporaire et en liant ma table à clui-ci.

    Merci pour ton aide

Discussions similaires

  1. Lien html dans flash qui ne fonctionne pas?
    Par zuzuu dans le forum Flash
    Réponses: 5
    Dernier message: 08/12/2008, 17h01
  2. [DW MX] lien courriel dans firefox qui ne fonctionne pas
    Par xataka dans le forum Dreamweaver
    Réponses: 1
    Dernier message: 02/11/2007, 14h54
  3. fonction onClick= dans IE6 ok Firefox fonctionne pas
    Par rejy_l'Édimestre dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 06/08/2007, 21h58
  4. padding dans un table ne fonctionne pas sur IE
    Par J0r_x dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 05/03/2007, 11h15
  5. Réponses: 3
    Dernier message: 26/01/2006, 13h11

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