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 :

Prob de connection entre base dorsale et base frontale sur yn serveur qui change


Sujet :

Access

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 17
    Points
    17
    Par défaut Prob de connection entre base dorsale et base frontale sur yn serveur qui change
    bonjour,
    j'ai une appli access destinée à plusieurs utilisateurs, que j'ai fractionnée en mettant la base dorsale sur un serveur( dans mon poste le serveur est placé sur T:\).
    mon prob est que quand je change de poste où quand un autre utilisateur essai d'accéder à l'appli, l'emplacement de la base dorsale change puisque pour lui le bon serveur est sur D par ex et pas T et ducoup pas de connection entre les deux bases.

    quelqu'un entre vous aura t'il une idée ou un code qui permet d'établir automatiquement la connection avec la base dorsale quelque soit l'emplacement du serveur sachant que le nom de serveur ne change pas, il est tjr le meme.

    merci bcp

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Pour ce connecter au serveur ne met pas la lettre, il faut utiliser un chemin UNC

    \\NomDuserveur\....

    Starec

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 17
    Points
    17
    Par défaut
    merci Starec
    oui je vois ce que vous voulez dire, mais je vois pas où je peux mettre le chemain pour rétablir la connection.
    pouviez vous me donner plus d'explications SVP
    merci encore une fois

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    Dans ce cas il faut faire ta liaison dynamiquement, à l'ouverture de la base sur le poste fixe

    Voici un exemple de code que j'utilise

    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
     
    Public Sub LiaisonTable()
    '---------------------------------------------------------------------------------------
    ' Procedure : LiaisonTable
    ' DateTime  : 04/03/2007 07:04
    ' Author    :  (STAREC)
    ' Purpose   : Cette procédure va permettre de crée la liaison entre la base dorsale et la
    '             base frontale
    '---------------------------------------------------------------------------------------
    '
        Call RecupChemin
        Set dbf = CurrentDb
        dbf.TableDefs.Refresh
        Dim rst As DAO.Recordset
        strSql = "SELECT strTable FROM tbl_TableAConnecter;"
        Set rst = dbf.OpenRecordset(strSql)
        While Not rst.EOF
            ' suppression de la table
            On Error Resume Next
            DoCmd.RunSQL "DROP TABLE [" & rst("strTable") & "] ;"
            ' création de la liaisons
            DoCmd.TransferDatabase acLink, "Microsoft Access", strChemBaseDorsal, acTable, rst("strTable"), rst("strTable")
            rst.MoveNext
        Wend
        rst.Close
        Set rst = Nothing
    End Sub
    J'ai une table, où j'ai le nom des tables à lier (tbl_TableAConnecter)
    Je supprme les tables " DropTable"
    Je transfert les tables avec une liaison TransferDatabase acLink
    La variable strChemBaseDorsal contient le chemin

    J'utilise DAO pour cela, si tu ne connais pas va voir l'excellent tuto sur le site

    Starec

  5. #5
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 17
    Points
    17
    Par défaut
    merci bcp

    ya t-il pas d'autres moyens plus pratiques où l'utilisateur n'a pas à aller chercher dynamiquement le fichier de base dorsale pour etablir la liaison

  6. #6
    Invité
    Invité(e)
    Par défaut
    Re

    L'utilisateur n'a rien à faire je t'explique.

    1 - Tu transformes la sub en function
    2 - Tu vires
    à la place tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    dim strChemBaseDorsal as string
    strChemBaseDorsal = "\\nomduserveur\..."
    dim dbf As DAO.Database
    dim tbl As DAO.TableDef
    3 - Tu mets cette fonction dans un module
    4 - tu crées une macro que tu nommes AutoExec, cette macro ce lancera automatiquement à l'ouverture de la base
    5 - Dans cette macro tu sélectionnes ExecuterCode
    6 - La en bas à nom fonction tu cliques sur les ...
    7 - Tu sélectionnes fonction intégrés, et la fonction

    N'oublie pas de coché DAO 3.6 dans les références

    Voilà

    Starec

  7. #7
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    691
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 691
    Points : 504
    Points
    504
    Par défaut
    Bonjour,

    Je deterre ce sujet parce que j'ai une question là dessus xD

    Comment faire en sorte pour que la frontale se lie automatiquement avec la dorsale se trouvant dans le MEME répertoire ?

  8. #8
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    691
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 691
    Points : 504
    Points
    504
    Par défaut
    En fait, j'ai trouvé, je procédais pas comme il fallait =)


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strChemBaseDorsal = CurrentProject.Path & "\nombase.mdb"

Discussions similaires

  1. [AC-2010] Aide crea table liées dans base dorsale depuis base frontale
    Par lbar012001 dans le forum VBA Access
    Réponses: 1
    Dernier message: 12/06/2013, 13h17
  2. Réponses: 3
    Dernier message: 21/04/2012, 12h42
  3. [AC-2003] Créer une table dans base dorsale depuis la frontale
    Par buzz73 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 21/01/2010, 11h40
  4. Restaurer une Base depuis un .Bak stocké sur un serveur distant
    Par TechNoCrat dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 18/08/2009, 14h45
  5. Comment se connecter à une base de données se trouvant sur un serveur ?
    Par McLéonce dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 26/09/2006, 13h48

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