Rétablir les relations

Messages postés
119
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
10 janvier 2014
- - Dernière réponse : NHenry
Messages postés
14599
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
8 décembre 2019
- 7 janv. 2011 à 21:17
Bonjour,

Je voudrais à partir de la base Frontale rétablir les relations de la base Dorsale,
Mais le code ne me rétablie que les relations de la base Frontale, et rien sur la Dorsale.

Ou se trouve mon erreur ?

Pour cerner plus facilement le problème le joins une base allégée.
http://cjoint.com/?0bgmWQXLXZa

Sub RetablirRelations(ByVal strChemin As String)
'Cette fonction rétablie les relations entre les tables
    Set WS = DBEngine.CreateWorkspace("Nouveau", "Admin", "", dbUseJet)
       Set dbDorsale = WS.OpenDatabase(strChemin)

      cpt = 0
      strsql = "Select * from [tbl Relations]"
      Set rs = dbDorsale.OpenRecordset(strsql)
      
      If Not rs.EOF Then
         cpt = cpt + 1
         rs.MoveFirst
         'Do Until rs.EOF
         While Not rs.EOF
                 Set rel = dbDorsale.CreateRelation(rs.Fields("NomRelation"), rs.Fields("TablePrincipale"), rs.Fields("TableSecondaire"), rs.Fields("relAttributes"))
                 Set myField = rel.CreateField(rs.Fields("ChampPrincipal"))
                 myField.ForeignName = rs.Fields("ChampSecondaire")
                 rel.Fields.Append myField
                 dbDorsale.Relations.Append rel
                 rs.MoveNext
        Wend
        'Loop
     End If
     
     dbDorsale.Close: Set dbDorsale = Nothing
     WS.Close: Set WS = Nothing
End Sub
Merci pour votre aide.

Salutations
Afficher la suite 

3 réponses

Messages postés
14599
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
8 décembre 2019
137
0
Merci
Bonjour,

Je ne sais pas comment faire, mais petite précision (d'après ton code) :
Tu ne travaille pas en, .NET mais en VB6, je pense (Set WS = DBEngine.Crea...)
Ensuite, tu utilises DAO, qui n'est plus maintenu par M$ depuis quelques années (DBEngine.CreateWorkspace)

Merci lors de tes prochains messages de faire attention à ce genre de renseignement.

Mon site
Commenter la réponse de NHenry
Messages postés
119
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
10 janvier 2014
0
Merci
Bonjour NHenry,

Merci pour ta réponse,

Je suis en VBA Access, j'ai du mal à trouver le bon site,
donc si celui-ci ne correspond pas à VBA ACCES, est-ce qu'il serait possible pour quelqu'un d'avoir l'amabilité de le déplacer dans le site approprié.

Merci par avance.

Salutations
Commenter la réponse de DAVIMIKA
Messages postés
14599
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
8 décembre 2019
137
0
Merci
Bonjour,

Le post aurait été mieux placé dans :
http://www.vbfrance.com/forum/theme-ADO-DAO_236.aspx
ou
http://www.vbfrance.com/forum/theme-VBA_244.aspx

Sinon, je pense que tu n'auras accès qu'aux relation directement visible, donc, je ne pense pas que tu puisse, mais je n'ai jamais eu à faire à ce cas.

Mon site
Commenter la réponse de NHenry