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]renseigner un recordset par le code source


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 189
    Par défaut [VB6]renseigner un recordset par le code source
    Bonjour a tous,
    mon probleme se trouve dans le sujet, mais je vais rentrer dans les détails.

    En gros j'ai trois tables et je dois remplir la troisième table à partir des deux premieres. Le probleme c'est que pour une ligne de la troisième table j'ai une ligne de la deuxième et plusieurs de la premiere.

    Pour eviter plein d'acces à la base de donnée, j'ia donc créé deux recordset qui vont pour l'un recuperer les infos de la table 1 et pour l'autre récuperer les infos de la table 2.
    Pour simplifier la chose j'ai voulu renseigner le trosieme recordset à partir du code source pour n'avoir en tout et pour tout à la fin du traitement seulement acces à la BD.

    D'apres ce que j'ai put trouver en glanant parci-parlà j'ai créé une fonction qui remplit les champs de mon recordset.
    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
    **********************************************************
     Public Function CreaRecordSet(rs As Recordset) As Boolean
    Dim rs As Recordset
    Set rs = New Recordset
    Set rs = Nothing
     
    'ajout des champs de la table ligbudcpt dans le recordset
        rs.Fields.Append "budcp_four", adVarChar, 10
        rs.Fields.Append "budcp_budg", adVarChar, 10
        rs.Fields.Append "budcp_tiers", adVarChar, 10
        rs.Fields.Append "budcp_budget", adVarChar, 2
        rs.Fields.Append "budcp_priorite", adInteger
        rs.Fields.Append "budcp_service", adVarChar, 10
        rs.Fields.Append "budcp_numopl", adInteger
        rs.Fields.Append "budcp_matr", adVarChar, 5
        rs.Fields.Append "budcp_rubrique", adInteger
        rs.Fields.Append "budcp_montant", adDouble
        rs.Fields.Append "budcp_bulletin", adInteger
        rs.Fields.Append "budcp_arrondi", adVarChar, 1
        rs.Fields.Append "budcp_affcpt", adVarChar, 2
        rs.Fields.Append "budcp_base", adDouble
        rs.Fields.Append "budcp_taux", adDouble
     
    'ouverture du recordset
    rs.Open
    rs.MoveFirst
    end Function
    ***********************************************************
    Je remplie ensuite ce recordset en utilisant ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ***********************************************************
     
    rs.AddNew
                rs!budcp_four = Trim(RsLienBud("lienbud_cpte_four"))
                rs!budcp_budg = Trim(RsLienBud("lienbud_cpte_bud"))
                rs!budcp_tier = Trim(RsLienBud("lienbud_cpte_tiers"))
                rs!budcp_budget = budget
    rs.update
     
    ************************************************************
    le probleme c'est que des la déclaration des champs
    ( rs.Fields.Append "budcp_four", adVarChar, 10)
    Visual Basic 6 plante et me dit "variable objet ou variable bloc with non définie"

    Ma question est donc de savoir est ce que cette méthode fonctionne reellement ou on et si oui quelle(s) ets ou sont les erreurs que j'auraient put faire

    d'avance merci

    @++
    dubidon

  2. #2
    Expert confirmé
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Par défaut
    forcément si tu détruit le Recordset avant de le remplir

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 189
    Par défaut
    ah y'a des fois on mériterait des claques, j'ai donc effacé le
    " set rs1 = nothing "

    Mais faut t'il aussi que j'enleve le rs1.movefirst ??

    d'avance merci

  4. #4
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    Citation Envoyé par dubidon
    ah y'a des fois on mériterait des claques
    Oui, et pour les balises de code en premier

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 189
    Par défaut
    oups désolé pour les balises aussi, en tout cas tout fonctionne de mon coté après quelques petites optimisations.
    Encore merci pour l'aide

    @++
    dubidon

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

Discussions similaires

  1. [XL-2010] Faire une recherche sur une page web d'élément texte sans passer par le code source
    Par Phifou dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 18/09/2014, 11h19
  2. Réponses: 8
    Dernier message: 15/07/2006, 18h59
  3. [VB6][newbie] pb de code source...
    Par j3r311y dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 28/02/2006, 12h10
  4. [vb6] Saisie de combo par code
    Par damned3 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 02/10/2005, 12h59
  5. [VB6] Code source pour modifier MsgBox
    Par khany dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 25/02/2003, 15h13

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