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 :

[VB6 - MSHFlexgrid]


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 21
    Points : 20
    Points
    20
    Par défaut [VB6 - MSHFlexgrid]
    Bonsoir

    Dans mon formulaire "principal"
    J'utilise une connection ADO sur une base MySQL.
    Je crée un recordset à partir d'une requète "SELECT......" que j'ouvre normalement.
    Lorsque je test mon recordset avec ce bout de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    monrcd.open "SELECT.....",maconnection
    if not monrcd.EOF then
    do until monrcd.eof
    for i=0 to monrcd.fields.count -1
    debug.print monrcd.fields(i).value
    next i
    monrcd.movenext
    loop
    j'obtiens bien les données de l'enregistrement correspondant.

    j'aimerais affecter les valeurs retournées à un mshflexgrid se trouvant sur un autre formulaire avec ce que j'utilisais à partir d'un rcd extrait d'une table access soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    with frm_Toto
    set .monflex.datasource = mrcd
    .monflex.mergecells=0
    .monflex.ettatata=;;;;
    end with
    et là rien sauf un message qui me dit que la source n'est pas trouvée et bug sur la ligne du set .monflex........

    que peut il se passer ?

    merci pour une solution dans ce sens sinon comment puis je afficher le résultat de mon recordset ? datagrid combobox ou autre sachant que je veux récupérer ensuite les données ainsi affichées dans le presse papier en vue d'un coller dans une transaction ERP

    claude

  2. #2
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 21
    Points : 20
    Points
    20
    Par défaut VB6-MySQL et les MSHFlexgrid
    Bonjour

    J'ai trouvé (avec de l'aide) une solution qui consiste à boucler sur mon enregistrement et à remplir les champs du MSHFlg un par un.
    Ca marche mais n'est pas le top..... Je crains le pire quand il y aura des milliers de lignes sur des dizaines de champs

    Il doit bien y avoir un moyen de passer le recordset en datasource du MSHFlg

    Je pense qu'il doit s'agir de lui indiquer quel type de connection il doit utiliser.
    Mais je ne vois pas comment....

    Je compte sur les "as" pas ou déjà plus en vacances

    Merci

  3. #3
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Pourquoi n'utilises-tu pas le composant DataGrid qui est plus approprié pour les liaisons avec les données ?

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 21
    Points : 20
    Points
    20
    Par défaut
    Salut zaza

    j'ai bien essayé, mais je butte sur les connections à savoir

    pour Data que dois je mettre dans 'Connect' car la déroulante ne me propose rien qui ressemble à MySQL

    pour adodc même problème que ci dessus avec 'ConnectionString' mais je pense que là je n'ai pas essayé de créer la chaîne de connexion avec la localisation de la base ce que je vais faire dès que je serais devant mon écran

    pendant que j'y suis mais hors sujet, je voudrais vider ou netoyer la liste des fichiers récents proposée à l'ouverture de VB. Sais tu comment faire ?

    En tout cas merci de t'intéresser à mon problème.

    Claude

  5. #5
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Citation Envoyé par crouba
    pendant que j'y suis mais hors sujet, je voudrais vider ou netoyer la liste des fichiers récents proposée à l'ouverture de VB. Sais tu comment faire ?
    Ces informations sont stockées dans la base de registres de Windows. Les manipulation peuvent y être hasardeuses. Il faut donc savoir précisément ce que l'on fait. Le mieux, avant de bidouiller la base de registres, c'est de faire un point de restauration pour récupérer les 'settings' au cas où les modifications effectuées par la suite s'avèreraient désastreuses.

    Il existe des applications du genre fichiers d'aide qui expliquent en détail les manipulations à faire lorsqu'on veut obtenir tel ou tel résultat... Mais pour les settings de VB... sais pas! As-tu fait une recherche sur le site de Microsoft?

    Pour ta liaison de données et le composant DataGrid, comme je n'ai pas souvent fait d'applications utilisant les bases de données, je te suggère les tutoriels DAO et ADO, selon la méthode que tu préfères (ou qui conviendra le mieux).

    Si tu n'y trouves pas ce qu'il te faut, tu dis.

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 21
    Points : 20
    Points
    20
    Par défaut
    Bonsoir

    c'était simple et je l'avais déjà fait mais la mémoire faiblit avec l'âge

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    cdetext = selection & mtable & condition & ordre
                    With frm_Réponse
                        With .Adodc1
                        .ConnectionString = mprov1
                        .RecordSource = cdetext
                        End With
                        With .flexref
                        Set .DataSource = frm_Réponse.Adodc1
                        End With
    mprov1 est la chaîne de connection "Driver=MySQL ODBC 5.1 Driver;SERVER=toto;UID=tata;PWD=xxx;"
    cdetext est le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "SELECT......" dans lequel je précise "FROM la BDD.matable.."
    ce qui me permet d'utiliser ma connection sur plusieurs bases différentes

    avec ce codej'évite ainsi les boucles, les calculs du nombre d'enregistrements pour générer les lignes etc...
    et c'est surtout plus propre

    pour la regedit je crois effectivement avoir déjà fait je verrais plus tard

    encore merci pour m'avoir rafraîchit la mémoire

    claude le pugnace

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

Discussions similaires

  1. [VB6] MSHFlexGrid - supprimer une ligne
    Par joquetino dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/06/2006, 07h49
  2. [VB6]MSHFlexGrid | renvoi de ligne
    Par ouar dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 03/05/2006, 00h47
  3. [vb6] Récuperer la position de la colonne [MSHFlexGrid]
    Par jlvalentin dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/12/2005, 11h29
  4. [VB6] SetFocus sur une MSHFlexGrid
    Par jlvalentin dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 13/01/2005, 15h22
  5. [VB6] [MSHFlexGrid] Tri sur clic dans la première ligne
    Par degreste dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 06/03/2003, 00h42

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