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 :

remplir une table par programmation


Sujet :

WinDev

  1. #1
    Membre du Club
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Points : 46
    Points
    46
    Par défaut remplir une table par programmation
    bonjour,
    je suis sur windev 15, et j'ai créé un fichier de type MySql. en suite , j'ai créé une fenêtre qui comportera un champ de text et une table.
    mon objectif et de remplir la table par programmation , pour cet effet; j'ai créé une requête paramétré et j'ai mis le code du bouton d'action suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    REQ1.Param1 = FEN1.nom
    SI PAS HExécuteRequête(REQ1) ALORS
    	Erreur("Impossible de faire la requête",HErreurInfo())
    SINON
    	TABLE_Table1.COL_Colonne1 = REQ1.prenom
    	TABLE_Table1.COL_Colonne2 = REQ1nom
    	TableAffiche(TABLE_Table1,taCourantPremier)
    FIN
    mais; quand j'exécute ma fenêtre et je saisie un nom existant sur la BD, rien ne s'affiche sur a table !!
    Merci d'avance

  2. #2
    Membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2011
    Messages : 18
    Points : 49
    Points
    49
    Par défaut
    Bonjour, et comme ceci :

    Citation Envoyé par alfred5 Voir le message
    bonjour,
    je suis sur windev 15, et j'ai créé un fichier de type MySql. en suite , j'ai créé une fenêtre qui comportera un champ de text et une table.
    mon objectif et de remplir la table par programmation , pour cet effet; j'ai créé une requête paramétré et j'ai mis le code du bouton d'action suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    REQ1.Param1 = FEN1.nom
    SI PAS HExécuteRequête(REQ1) ALORS
    	Erreur("Impossible de faire la requête",HErreurInfo())
    SINON
           HLitPremier(REQ1)
           TANTQUE PAS HEndehors(REQ1)
           	TABLE_Table1.COL_Colonne1 = REQ1.prenom
    	TABLE_Table1.COL_Colonne2 = REQ1.nom
    	HLitSuivant(REQ1)
    FIN
    TableAffiche(TABLE_Table1,taCourantPremier)
    mais; quand j'exécute ma fenêtre et je saisie un nom existant sur la BD, rien ne s'affiche sur a table !!
    Merci d'avance

  3. #3
    Membre du Club
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Points : 46
    Points
    46
    Par défaut
    Bonsoir;
    j'ai modifié mon code selon le votre mais toujours la table n'affiche rien !!

  4. #4
    Membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2011
    Messages : 18
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par alfred5 Voir le message
    bonjour,
    je suis sur windev 15, et j'ai créé un fichier de type MySql. en suite , j'ai créé une fenêtre qui comportera un champ de text et une table.
    mon objectif et de remplir la table par programmation , pour cet effet; j'ai créé une requête paramétré et j'ai mis le code du bouton d'action suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    REQ1.Param1 = FEN1.nom
    SI PAS HExécuteRequête(REQ1) ALORS
    	Erreur("Impossible de faire la requête",HErreurInfo())
    SINON
    	TABLE_Table1.COL_Colonne1 = REQ1.prenom
    	TABLE_Table1.COL_Colonne2 = REQ1nom
    	TableAffiche(TABLE_Table1,taCourantPremier)
    FIN
    mais; quand j'exécute ma fenêtre et je saisie un nom existant sur la BD, rien ne s'affiche sur a table !!
    Merci d'avance
    Si la table est remplie par programmation, c'est ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    REQ1.Param1=FEN1.nom
    HExécuteRequête(REQ1)
    HLitPremier(REQ1)
    SI HTrouve() ALORS
    	TableAjoute(TABLE_Table1)
    	HLitSuivant(REQ1)
    SINON
    	Info("Aucun enregistrement!")
    FIN
    TableAffiche(TABLE_Table1)

  5. #5
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 178
    Points : 416
    Points
    416
    Par défaut
    Bonjour,

    Il manque le parcoure de votre requête et la création des lignes pour que cela fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    TableSupprimeTout(TABLE_Table1) // Vider la table avant de mettre les nouvelles valeurs
     
    REQ1.Param1 = FEN1.nom
    SI PAS HExécuteRequête(REQ1) ALORS
     Erreur("Impossible de faire la requête",HErreurInfo())
    SINON
     POUR TOUT REQ1
      // TableAjouteLigne créé la ligne (ce qui manquait dans votre code) et défini les valeurs des colonnes dans l'ordre.
      TableAjouteLigne(TABLE_Table1,REQ1.prenom,REQ1.nom)
     FIN
    FIN
    TableAffiche n'est pas utile avec les tables remplies par programmation, à moins que les fonctions de calcul des tables soit utilisées.

    Pour la suite je vous conseille d'étudier l'autoformation fournie avec Windev, ces points y sont abordés dans le détail et constituent la base de l'environnement.

  6. #6
    Membre éprouvé

    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    402
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2009
    Messages : 402
    Points : 915
    Points
    915
    Par défaut
    Bonjour,

    je reprends le code que vous avez fourni au début plutôt que de passer par un des 12 chemin possibles. Il faut que vous utilisiez le debug en suivant pas à pas ce qui se passe pour être sur que votre requête renvoi bien un résultat. Ensuite ce code devrait vous aider à avancer :

    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
     
    tablesupprimetout(TABLE_Table1) // vider avant de remplir
     
    REQ1.Param1 = FEN1.nom // ok passage du paramètre
     
    SI PAS HExécuteRequête(REQ1) ALORS
    	Erreur("Impossible de faire la requête",HErreurInfo())
    SINON // la requête est bien executée mais est ce qu'elle renvoie qq chose?
           HLitPremier(REQ1)
           TANTQUE PAS HEndehors(REQ1)
           		tableajoute(TABLE_Table1)//ajoute une ligne vide
    		TABLE_Table1.COL_Colonne1 = REQ1.prenom
    		TABLE_Table1.COL_Colonne2 = REQ1.nom
    		HLitSuivant(REQ1)
    	FIN // il manquait ce fin je crois
    FIN
    bon dev

  7. #7
    Membre du Club
    Inscrit en
    Mai 2010
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 128
    Points : 46
    Points
    46
    Par défaut
    Merci à vous.

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

Discussions similaires

  1. remplir une table par programmation
    Par hicham-dj dans le forum WinDev
    Réponses: 4
    Dernier message: 20/03/2014, 16h46
  2. [WD14] Remplir une Table par programmation
    Par nordinen dans le forum WinDev
    Réponses: 1
    Dernier message: 01/04/2011, 19h25
  3. [WD10-Exp]Remplir une combo par programmation
    Par evosan dans le forum WinDev
    Réponses: 5
    Dernier message: 19/04/2007, 10h22
  4. remplir une table par VBA
    Par gwen_oc dans le forum Access
    Réponses: 3
    Dernier message: 22/02/2007, 15h04
  5. filtrer une table par programmation
    Par programeur dans le forum Delphi
    Réponses: 2
    Dernier message: 11/01/2007, 12h38

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