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:
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
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 ***********************************************************
le probleme c'est que des la déclaration des champs
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 ************************************************************
( 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
Partager