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

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    décembre 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : décembre 2015
    Messages : 10
    Points : 5
    Points
    5

    Par défaut Parcours d'un recordset se comporte différemment selon OS

    Bonjours,

    je viens poster ici, car je suis devant une intrigue. J'ai un programme qui va chercher un set de données dans une base SQl et je les stocks dans un objet de type ADODB.recordset.
    Ensuite je met ces données dans un datagridview. Alors sur les systèmes d'exploitation Windows 7, je n'ai aucun problème. Par contre nous remplaçons nos pc petit à petit par des Windows 10
    et là je remarque que le programme n'affiche pas les données dans le datagridview.

    voici le code exécuté :

    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
     
    Do While Not .EOF
                        MSFlexGrid1.Rows.Add(strZero(.Fields("MhNoMarche").Value.ToString(), 5), _
                            .Fields("MHReferEco").Value.ToString(), _
                            .Fields("MHintitule").Value.ToString(), _
                            GlossLect("TYD", .Fields("MHtypeDoss").Value.ToString()), _
                            GlossLect("SRV", .Fields("MHService1").Value.ToString()), _
                            .Fields("MHService2").Value.ToString(), _
                            .Fields("MHmod_Type").Value.ToString() & .Fields("MHmod_Mode").Value.ToString() & .Fields("MHmod_Publ").Value.ToString() & .Fields("MHmod_Serv").Value.ToString(), _
                            FormEurFix(.Fields("MHmontt_Tc").Value.ToString(), 10) & CStr(IIf(.Fields("MHsuivPlaf").Value.ToString() = "D", SufPlaf, String.Empty)), _
                            .Fields("MHecon_cod").Value.ToString() & .Fields("MHcmpt_cod").Value.ToString() & .Fields("MHdfin_cod").Value.ToString() & LCase(.Fields("MHavis_aut").Value.ToString()) & .Fields("MHavis_cod").Value.ToString() & .Fields("MHbonc_cod").Value.ToString() & CStr(IIf(CBool(.Fields("MHflagBloq").Value.ToString()), "b", "_")), _
                            .Fields("MhVuParDfin").Value.ToString())
                        IcCpt = IcCpt + 1
                        ReDim Preserve TabBMarch_No(IcCpt)
                        TabBMarch_No(IcCpt) = .Fields("MhNoMarche").Value.ToString()
                        .MoveNext()
                    Loop
    quand je débogue sur mon pc windows 7 tout se passe bien et j'ai bien une valeur pour mes champs. Quand je débogue sur la machine Windows 10 voici l qui lève une exception :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Fields("MhVuParDfin").Value.ToString()
    {"Impossible de trouver l'objet dans la collection correspondant au nom ou à la référence ordinale demandé."}
    Je vous assure que le champ existe bel et bien dans la table en question.
    Dans le doute voici un printscreen de ce que j'ai expliqué :
    Nom : Sans titre.png
Affichages : 84
Taille : 165,0 Ko

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    avril 2007
    Messages
    13 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : avril 2007
    Messages : 13 288
    Points : 23 740
    Points
    23 740

    Par défaut

    c'est toujours pas le forum vb6 ici ^^
    en fait le sous forum de vb6 qui s'appelle vb.net n'est autre que dotnet/languages/vb.net
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Rédacteur/Modérateur

    Avatar de Philippe JOCHMANS
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2005
    Messages
    20 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : mai 2005
    Messages : 20 040
    Points : 50 172
    Points
    50 172

    Par défaut

    Bonjour

    C'est moi qui ait déplacé ce message, je pense qu'il a plus sa place ici.

    Car c'est du vb.net à la sauce VB6, il faut faire du .net et non du VB6 ou tout faire en VB6.

    Philippe
    Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
    Vous pouvez consulter mes articles sur Access et PowerPoint et n'oubliez pas de consulter les FAQs MS Office

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    avril 2007
    Messages
    13 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : avril 2007
    Messages : 13 288
    Points : 23 740
    Points
    23 740

    Par défaut

    c'est moi qui lui ai dit d'aller demander sur vb6, car c'est un code vb6 "migré" dans vs
    il a déjà posté par là et n'a pas eut de réponse en un mois
    et vu que peu de gens utilisent des recordset en .net je pensais qu'il aurait plus de réponse sur le forum vb6, bien que je viens de voir qu'il y a pas des masses d'activité là bas ^^
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Rédacteur/Modérateur

    Avatar de Philippe JOCHMANS
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2005
    Messages
    20 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : mai 2005
    Messages : 20 040
    Points : 50 172
    Points
    50 172

    Par défaut

    Citation Envoyé par Pol63 Voir le message
    et vu que peu de gens utilisent des recordset en .net je pensais qu'il aurait plus de réponse sur le forum vb6, bien que je viens de voir qu'il y a pas des masses d'activité là bas ^^
    Exact, c'est pour cela que ce message est au meilleur endroit, car pour moi il faut faire du VB.net et non utiliser les méthodes VB6 en vb.net.

    Car on ne développe quasiment plus de VB6 pour Windows 10 ou on essaye tant bien que mal de maintenir les codes actuels.

    Philippe
    Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
    Vous pouvez consulter mes articles sur Access et PowerPoint et n'oubliez pas de consulter les FAQs MS Office

  6. #6
    Responsable .NET & Magazine

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    juillet 2016
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juillet 2016
    Messages : 2 476
    Points : 9 657
    Points
    9 657
    Billets dans le blog
    22

    Par défaut

    Bonjour,

    Histoire d'essayer de faire avancer un peu le schmilblick, j'ai une suggestion qui n'a rien à voir avec VB, que ce soit VB.Net ou VB6.

    La base de données est-elle locale ou à distance ?

    Si c'est une base de données locale, il serait intéressant de regarder la collation utilisée sur chacun des systèmes pour la base de données en question. Si, par exemple, sous Windows 7 la collation est insensible à la casse et que sous Windows 10 c'est une collation sensible à la casse qui est utilisée, on pourrait tout à fait observer le comportement observé si jamais le nom du champ ne respecte pas la casse !
    François DORIN
    Consultant informatique : conception, modélisation, développement (C#/.Net et SQL Server)
    Site internet | Profils Viadéo & LinkedIn
    ---------
    Page de cours : fdorin.developpez.com
    ---------
    N'oubliez pas de consulter la FAQ C# ainsi que les cours et tutoriels

  7. #7
    Expert éminent sénior

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2012
    Messages
    9 498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2012
    Messages : 9 498
    Points : 16 152
    Points
    16 152
    Billets dans le blog
    1

    Par défaut

    Bonjour,

    Si j'ai bien compris il est question de faire fonctionner un empattage visual studio6 sur win10!

    Sens installation du service pack6 pour visual studio6 pas de salut!

  8. #8
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    avril 2007
    Messages
    13 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : avril 2007
    Messages : 13 288
    Points : 23 740
    Points
    23 740

    Par défaut

    Citation Envoyé par dysorthographie Voir le message
    Si j'ai bien compris il est question de faire fonctionner un empattage visual studio6 sur win10!
    comme d'hab non ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  9. #9
    Expert éminent sénior

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2012
    Messages
    9 498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2012
    Messages : 9 498
    Points : 16 152
    Points
    16 152
    Billets dans le blog
    1

    Par défaut

    Non pas comme dab le service pack6 est spécialement prévu pour vb6 il n'est pas natif et ne figure en aucun cas dans le mise
    à jours standard de Windows!
    Il mets à jour les contrôles visual basic!

    https://www.microsoft.com/fr-fr/down...s.aspx?id=5721

  10. #10
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    avril 2007
    Messages
    13 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : avril 2007
    Messages : 13 288
    Points : 23 740
    Points
    23 740

    Par défaut

    wow

    je disais comme d'hab tu n'as pas compris la question ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  11. #11
    Expert éminent sénior

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2012
    Messages
    9 498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2012
    Messages : 9 498
    Points : 16 152
    Points
    16 152
    Billets dans le blog
    1

    Par défaut

    Oui effectivement tu as raisons,
    Je n'avais pas regarder l'image jointe il s'agit bien de vb6 dans un éditeur vb.net!

    Comme dab je ne comprends rien par conséquent je m'abstiendrai pour préserver mon amour propre!

    Et merci pour tes bon vœux!

  12. #12
    Expert éminent

    Homme Profil pro
    Développeur .NET
    Inscrit en
    janvier 2012
    Messages
    4 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : janvier 2012
    Messages : 4 371
    Points : 9 041
    Points
    9 041
    Billets dans le blog
    27

    Par défaut

    Bonjour,

    Il y a quelque chose que je ne comprends pas (moi non plus). (Salut Robert )

    Dans ta question originale tu dis:

    je remarque que le programme n'affiche pas les données dans le datagridview.
    et dans ton code tu dis

    Donc, se pourrait-il que ton DataGridView (.net) soit en fait un Flexgrid de VB6 que VB.net reprend parce que c'est un ActiveX, et que ton Flexgrid ne soit pas installé sur tes machines Windows 10.

    Et qu'en fait le message d'horreur induise en horreur en faisant référence à la mauvaise collection ?

    Ou bien qu'ailleurs sans ton code, il y ait quelque chose qui fasse planter les communications entre une base, un DGV et une Flexgrid, en supposant que tu aies vraiment une Flexgrid et un DataGridView dans ton programme; ce qui ferait une autre chose que je ne comprendrais pas.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  13. #13
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    avril 2007
    Messages
    13 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : avril 2007
    Messages : 13 288
    Points : 23 740
    Points
    23 740

    Par défaut

    je pense que ca vient bien du recordset
    Impossible de trouver l'objet dans la collection correspondant au nom ou à la référence ordinale demandé
    voudrait auquel cas dire qu'il ne trouve pas une colonne alors qu'il pense qu'elle est bien dans le select ...

    et là même en regardant les paramètres régionaux je ne vois pas trop comment ca pourrait interférer ici
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  14. #14
    Expert éminent sénior

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2012
    Messages
    9 498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : avril 2012
    Messages : 9 498
    Points : 16 152
    Points
    16 152
    Billets dans le blog
    1

    Par défaut

    Salut Clément.

Discussions similaires

  1. Parcourt d'un recordset se comporte différement selon OS
    Par Mizar_Alcor dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 28/12/2017, 14h43
  2. Comportement différent selon Mode Execution
    Par MarronSuisse dans le forum C
    Réponses: 7
    Dernier message: 14/04/2008, 13h52
  3. Parcours d'un recordset
    Par Celephais dans le forum VBA Access
    Réponses: 4
    Dernier message: 11/11/2007, 21h15
  4. sprintf (comportement bizarre selon le compilateur)
    Par turbo_chess dans le forum C
    Réponses: 6
    Dernier message: 11/10/2007, 16h24
  5. Sortir d'une boucle de parcour d'un Recordset
    Par Mariboo dans le forum IHM
    Réponses: 2
    Dernier message: 12/06/2006, 19h07

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