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

Access Discussion :

Chemin relatif pour tables liées


Sujet :

Access

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Chemin relatif pour tables liées
    Bonjour,

    y-a-t-il un moyen de spécifier un chemin relatif (plutôt qu'absolu) pour des tables liées ?
    (outils/utilitaires de bd/gestionnaire de tables liées)
    Quelque chose du genre : .\tables\toto_princip.mdb
    Plutôt que : c:\machin\bidule\tables\toto_princip.mdb

    Ceci ayant pour but de rendre "portable" ma base fractionnée (avec ses tables dans le répertoire à côté d'elle) sans avoir à raffraichir les liaisons.

  2. #2
    Membre éclairé Avatar de stéphane_ais2
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 792
    Points : 891
    Points
    891
    Par défaut
    Bonjour,

    As-tu fait des recherches sur le forum ?
    Le sujet est déjà traité...me semble-t-il?

    SE

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par stéphane_ais2
    As-tu fait des recherches sur le forum ?
    Le sujet est déjà traité...me semble-t-il?
    Oui. Je planche sur le sujet depuis plusieurs jours déjà.
    Le plus prometteur était la modif de la liaison par quelques lignes de VBA (trouvées effectivement sur ce forum)...
    Mais, cela ne fonctionne pas.
    Dans mon code je tape MONCHEMIN = ".\tables\toto_princip.mdb"
    Mais, lorsque je vais voir la liaison (gestionnaire de liaisons) réellement mémorisée par Access, c'est : "D:\tables\toto_princip.mdb"
    (D n'ayant d'ailleurs rien à voir avec le répertoire en cours...Mystère!?)

    D'où mon post.

    CB

  4. #4
    Membre éclairé Avatar de stéphane_ais2
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 792
    Points : 891
    Points
    891

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par stéphane_ais2
    J'ai regardé.
    Mais comme beaucoup d'autres fil, celui ci ne répond pas à mon problème.
    Dans tout ceux que j'ai pu parcourir, le principe est que l'emplacement de la dorsale (les tables) est supposé connu.
    Or, ce que je cherche à obtenir, c'est une liaison frontale/dorsale dont le chemin absolu(UNC) est inconnu a priori MAIS dont le chemin relatif est connu (ex: chercher la dorsale dans le répertoire actuel de la frontale, ce, quelque soit l'endroit où on installe la frontale).

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Désoléje ne pense pas que ce soit possible, j'ai pas mal travaillé là dessus et je n'ai rien trouvé.

    J'ai résolu le pb de la façon suivante :

    Au démarage l'appli teste si la base liée est accessible (avec Dir()).

    Si elle n'est pas accessible elle vérifie dans son fichier d'ini si elle a l'info pour se reconnecter automatiquement.

    Et enfin si cela ne marche pas un écran demande à l'utilisateur où est la base recherché.

    Une fois que l'utilisateur a indiqué le chemin il est mémorisé dans le fichier ini.

    Donc généralement je n'ai a indiqué qu'une seule fois le chemin, car aprés la reconnexion est automatique.

    J'ai aussi fais un code plus élaboré pour gérer plusieurs bases liées mais l'idée est la même.

    Ce que j'ai fais aussi c'est du code qui récupère le chemin d'accés à la base courrante et qui ajuste le chemin des tables liées en conséquence en modifiant la propriété connect des objets tabledef.

    A+

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par marot_r
    Ce que j'ai fais aussi c'est du code qui récupère le chemin d'accés à la base courrante et qui ajuste le chemin des tables liées en conséquence en modifiant la propriété connect des objets tabledef.

    A+
    Ouuiii ! Ca me semble parfait !
    Peux-tu m'indiquer le code utilisé pour récupérer le chemin de la base courante (pour la connection, je sais faire) ?

    Merci.
    CB

  8. #8
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    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
     
    Option Compare Database
    Option Explicit
     
    Private Sub test_DBDir()
        Debug.Print DBDir()
    End Sub
     
    Public Function DBDir() As String
        Dim result As String
        Dim morceauxNom As Variant
        Dim t As String
     
        t = CodeDb.Name
     
        morceauxNom = Split(CodeDb.Name, "\")
        result = Left(t, Len(t) - Len(morceauxNom(UBound(morceauxNom))))
        DBDir = result
    End Function
    A+

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Super.
    Merci.

    CB

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/05/2006, 17h15
  2. [aSp.net][c#] chemin relatif pour acceder a un fichier
    Par mahboub dans le forum ASP.NET
    Réponses: 4
    Dernier message: 05/04/2006, 00h59
  3. Raccourci Chemin relatif pour la cible
    Par rabobsky dans le forum Autres Logiciels
    Réponses: 7
    Dernier message: 07/11/2005, 13h57
  4. definir chemin pour table liée
    Par branqueira dans le forum Access
    Réponses: 4
    Dernier message: 22/10/2005, 13h44
  5. Comment récupérer le chemin d'une table liée
    Par ptitepunk dans le forum Access
    Réponses: 2
    Dernier message: 15/09/2005, 10h47

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