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

VB 6 et antérieur Discussion :

problème d'affichage des données dans MSFlexGrid


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut problème d'affichage des données dans MSFlexGrid
    bonjour,
    je travaille avec VB6 et j'ai un problème avec MSFlexGrid1,je veux afficher dans ce dernier numéro de commande,ref_produit,et la quantité avec la récupération des donnes de la base de donnes,alors avec le code que j'ai fait au dessous toujours c vide et blanc rien n'est affiché.
    please comment ecrire comme 1ère ligne les titres et apres les données récupérer de la base.
    merci pr vos aides

    voici le code
    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
    Private Sub List1_Click()
    n = List1.ListIndex 'evenement selectionné
    C = List1.List(n)
     
    While MFG.Rows > 2
    MFG.RemoveItem (MFG.Rows - 1)
    Wend
    MFG.FormatString = "|Numéro commande        |Réf_produits         |Quantité produits"
     
     
    Dim DB_connexion As ADODB.Connection
     
    Set DB_connexion = New ADODB.Connection
    DB_connexion.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" & "SERVER=localhost;" & " DATABASE=liv;" & "UID=root;PWD=; OPTION=3"
    DB_connexion.Open
     
    Set rsi = New ADODB.Recordset 'recuperation des informtions ds la base
    rsi.CursorLocation = adUseServer
    rsi.Open "select all num_cmd,ref_pdt,qte_pdt from produits where ref_pdt='" & C & "'", DB_connexion
    Do While Not rsi.EOF 'tant qu'i existe
      MFG.TextMatrix(MFG.Rows - 1, 1) = rsi.Fields("num_cmd").Value
      MFG.TextMatrix(MFG.Rows - 1, 2) = rsi.Fields("ref_pdt").Value
      MFG.TextMatrix(MFG.Rows - 1, 3) = rsi.Fields("qte_pdt").Value
      MFG.AddItem ""
     
    rsi.MoveNext
    Loop
     
    End Sub

  2. #2
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut
    Salut
    Essais ce
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    Private Sub List1_Click()
    '************************************ ajouter *********************
    Dim C As Integer, N As Integer
    '************************************fin ajouter *********************
    N = List1.ListIndex 'evenement selectionné
    C = List1.List(N)
     
    'While MFG.Rows > 2
    'MFG.RemoveItem (MFG.Rows - 1)
    'Wend
    '************************************ ajouter *********************
    MFG.Rows = 1: MFG.FixedRows = 1
    MFG.Cols = 4: MFG.FixedCols = 1
    MFG.FormatString = "|Numéro commande        |Réf_produits         |Quantité produits"
    '************************************fin ajouter *********************
     
    Dim DB_connexion As ADODB.Connection
     
    Set DB_connexion = New ADODB.Connection
    DB_connexion.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" & "SERVER=localhost;" & " DATABASE=liv;" & "UID=root;PWD=; OPTION=3"
    DB_connexion.Open
     
    '************************************ ajouter *********************
    If DB_connexion.State = adStateClosed Then
        MsgBox "Impossible d'ouvrir la BD", vbCritical, "Problème"
        Exit Sub
    End If
     
    Dim rsi As ADODB.Recordset
    '************************************fin ajouter *********************
     
    Set rsi = New ADODB.Recordset 'recuperation des informtions ds la base
    rsi.CursorLocation = adUseServer
    rsi.Open "select all num_cmd,ref_pdt,qte_pdt from produits where ref_pdt='" & C & "'", DB_connexion
     
    '************************************ ajouter *********************
    If rsi.State = adStateClosed Then
        MsgBox "Impossible d'ouvrir la Table", vbCritical, "Problème"
        DB_connexion.Close
        Exit Sub
    End If
    If rsi.EOF Then
        rsi.Close
        DB_connexion.Close
        MsgBox "Aucun enregistrement disponnible", vbCritical, "Problème"
        Exit Sub
    End If
    '************************************fin  ajouter *********************
     
    Do While Not rsi.EOF 'tant qu'i existe
        MFG.Rows = MFG.Rows + 1
        MFG.TextMatrix(MFG.Rows - 1, 1) = rsi.Fields("num_cmd").Value
        MFG.TextMatrix(MFG.Rows - 1, 2) = rsi.Fields("ref_pdt").Value
        MFG.TextMatrix(MFG.Rows - 1, 3) = rsi.Fields("qte_pdt").Value
        'MFG.AddItem ""
     
        rsi.MoveNext
    Loop
     
    '************************************ ajouter *********************
    rsi.Close
    DB_connexion.Close
    '************************************fin  ajouter *********************
     
    End Sub

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    salut;
    merci de m'aider
    mais le code que tu m'as donné il m'affiche un erreur:la valeur de fixedrows doit au moins etre inferieur à 1 à la valeur de rows.
    merci
    je ss débutante en vb6.

  4. #4
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    '************************************ ajouter *********************
    MFG.Rows =2: MFG.FixedRows = 1
    '...........
    '...........
    If rsi.EOF Then
        rsi.Close
        DB_connexion.Close
        MsgBox "Aucun enregistrement disponnible", vbCritical, "Problème"
       MFG.Rows =1 ' <-----------------------------
       Exit Sub
    End If

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    toujours le même problème et quand je fais débogage l'erreur s'apparente en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MFG.Rows = 1: MFG.FixedRows = 1
    MFG.Cols = 4: MFG.FixedCols = 1

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    j'ai changé celui la

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MFG.Rows = 1: MFG.FixedRows = 1
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     MFG.Rows = 2: MFG.FixedRows = 1
    mais quand j’exécute toujours c'est vide pas d'affichage de données !

  7. #7
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut
    Aucun message d'erreur ou message gérés par les If ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rsi.Open "select all num_cmd,ref_pdt,qte_pdt from produits where ref_pdt='" & C & "'", DB_connexion
    ref_pdt dans la BD est il bien de type String, si cela est du numerique, il faut supprimer les '
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rsi.Open "select all num_cmd,ref_pdt,qte_pdt from produits where ref_pdt=" & C, DB_connexion

  8. #8
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    oui il est de type varchar; quand j’exécute et je sélectionne un produit il y a des lignes qui s'ajoute mais vide tout blanc !
    j'ai pas trouvé l'erreur !

  9. #9
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut
    Comme cela, çà donne quoi ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
         'rsi.Open "select all num_cmd,ref_pdt,qte_pdt from produits where ref_pdt='" & C & "'", DB_connexion
         rsi.Open "select num_cmd,ref_pdt,qte_pdt from produits where ref_pdt='" & C & "'", DB_connexion, adOpenStatic, adLockPessimistic

  10. #10
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    le même probleme ,affichage des lignes vide.
    (le nombre de ligne qu'il m'affiche = nombre de pdts que j'ai dans la base) mais malheureusement c'est vide pas de contenu !

  11. #11
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut
    Essais pour voir
    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
    Do While Not rsi.EOF 'tant qu'i existe
        'MFG.Rows = MFG.Rows + 1
        'MFG.TextMatrix(MFG.Rows - 1, 1) = rsi.Fields("num_cmd").Value
        'MFG.TextMatrix(MFG.Rows - 1, 2) = rsi.Fields("ref_pdt").Value
        'MFG.TextMatrix(MFG.Rows - 1, 3) = rsi.Fields("qte_pdt").Value
       '************provisoirement***************
       MsgBox rsi.Fields(0).Name & ": " & rsi.Fields(0).Value
       MsgBox rsi.Fields(1).Name & ": " & rsi.Fields(1).Value
       MsgBox rsi.Fields(2).Name & ": " & rsi.Fields(2).Value
       Exit Do
       '************fin provisoirement***************
        'MFG.AddItem ""
     
        rsi.MoveNext
    Loop

  12. #12
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    cette fois il me donne des MsgBox avec numcmd,ref_pdt et la qantite du pdt sélectionné,comme ça, ça marche !!

    donc le problème c'est dans MSFlexGrid1 je pense!

  13. #13
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut
    Aurais tu touché à la couleur de l'encre, et que celle-ci soit de la même couleur que le fond de ta cellule ?

  14. #14
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    oullallla ! ah oui c'est vrai la couleur!!!
    merci beaucoup et je m'excuse pour cette faute!
    j'ai récupérer mes données maintenant
    mais le titre de chaque colonne ne s'affiche pas :
    Numéro commande |Réf_produits |Quantité produits
    encore mille merci

  15. #15
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 097
    Points : 16 606
    Points
    16 606
    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    'Wend
    '************************************ ajouter *********************
    MFG.Rows = 2: MFG.FixedRows = 1
    MFG.Cols = 4: MFG.FixedCols = 1
    MFG.FormatString = "|Numéro commande        |Réf_produits         |Quantité produits"
    MFG.ForeColorFixed = 0 'noir <-----------------------
    MFG.BackColorFixed = &H8000000F  'gris <------------
    '************************************fin ajouter *********************
     
    'Dim DB_connexion As ADODB.ConnectionEnd Sub
    On ne sait jamais

  16. #16
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 29
    Points
    29
    Par défaut
    merci infiniment pour ton aide c'est très gentil vraiment

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 10/10/2014, 09h53
  2. Problème d'affichage des données de la BD dans une JList
    Par hela_sfar dans le forum Composants
    Réponses: 0
    Dernier message: 15/07/2013, 15h14
  3. Réponses: 1
    Dernier message: 31/08/2009, 05h17
  4. probléme d'affichage des données dans le datagridview
    Par asprog dans le forum Windows Forms
    Réponses: 0
    Dernier message: 13/05/2009, 22h23
  5. Réponses: 2
    Dernier message: 12/09/2008, 11h30

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