Base ACCESS 2010 fractionnée et liaison UNC

Fermé
Maud - Modifié par Maud le 5/10/2012 à 00:39
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 - 26 nov. 2012 à 16:21
Bonjour,

Le problème des bases ACCESS 2010 fractionnées à installer sur un poste « Client » après les avoir verrouillées (par conversion des bases accdb en accde) est de pouvoir conserver les liaisons sur n'importe quel poste entre la base frontale et la base dorsale.
Pour cela, il semble qu'il faille utiliser des liaisons réelles du type UNC et non celles définies avec un lecteur mappé comme H:\, F:\,.....
Est-ce quelqu'un connait la syntaxe à utiliser?
Un grand merci pour votre aide




A voir également:

60 réponses

f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
5 oct. 2012 à 09:59
0
J'avais déjà vu ce type de lien mais je ne comprends pas ce qu'il faut renseigner comme "serveur" et comme "partage"...
0
steeeeve Messages postés 4 Date d'inscription jeudi 4 octobre 2012 Statut Membre Dernière intervention 5 octobre 2012
5 oct. 2012 à 13:20
maud est ce que tu pourrait m aider avec mon blackberry?
0
Je ne comprends pas....
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
5 oct. 2012 à 17:32
Re,
Vos PC sont en reseau. En ouvrant l'explorer, vous allez jusqu'a ouvrir le repertoire ou est votre base sur votre server. Vous aurez le chemin dans la barre adresse de l'explorer.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nous aurons dans ce cas une liaison définie avec un lecteur mappé comme h:\ ,F:\... et non une liaison du type UNC si je ne me trompe....

L'installation des bases sur les postes "client" se fait après verrouillage (par conversion des bases accdb en accde), ce qui veut dire qu'après je n'ai plus accès à l'explorer.
Ce que je cherche à faire, c' est établir les liaisons entre la base frontale et la base dorsale avant la conversion (sachant que la base dorsale se trouve dans un sous-répertoire de la frontale), et que ces liaisons fonctionnent sur n'importe quel poste "client".
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
6 oct. 2012 à 08:48
Re,

Nous aurons dans ce cas une liaison définie avec un lecteur mappé comme h:\ ,F:\... et non une liaison du type UNC si je ne me trompe....
Non, dans la barre d'adresse vous avez: \\\server\repertoire de partage\sous-repertoire......
Je n'ai pas de PCs en reseau pour l'instant, donc je ne peut pas faire de simul. La semaine prochaine j'essaierai si vous n'avez pas resolu votre probleme.
0
Mon PC n'est pas non plus en réseau. Je suis donc très intéressée par votre simulation afin d'y voir plus clair.
Un grand merci par avance.
Bon WE
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
6 oct. 2012 à 21:14
Salut,

tu peux regarder ce qui a été fait ici :

https://forums.commentcamarche.net/forum/affich-14845990-access-gerer-plusieurs-bases-avec-1-menu-gen

Ca devrait aller dans le sens que tu souhaites...
0
Bonjour et merci blux,

Je ne vais pas avoir le temps de creuser ce matin, mais je regarde de plus prêt dès que possible.

A + en encore merci pour ton aide
0
Re-bonjour Blux,

Il semblerait effectivement que la solution à mon problème figure dans le lien http://www.divshare.com/download/16055227-7c8 mais on n'arrive pas à y accéder.....
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
8 oct. 2012 à 16:18
Marche correctement chez moi...
0
J'ai ré-essayé hier soir puis ce matin en vain...
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
9 oct. 2012 à 10:18
Effectivement, ça a du changer (en mal) depuis que je l'ai utilisé.
J'ai posté le fichier chez free :

http://dl.free.fr/getfile.pl?file=/McQsO40z
0
C'est effectivement beaucoup mieux, merci.
Mise à part un petit problème de compilation, je reste baba devant ce développement! Mes connaissances en VBA sont cependant trop limitées pour pouvoir appréhender tous ces enchaînements (je n'arrive même pas à voir comment le module est rattaché au formulaire "Menu" : dans la feuille des propriétés, je ne vois rien...).
De mon côté, j'ai compris que j'étais sur une fausse piste avec ma liaison UNC : j'espérais par le biais d'une formulation type pouvoir accéder automatiquement à une base dorsal située dans un sous-répertoire de la base frontale (ou ailleurs), mais apparemment, c'est beaucoup plus complexe et là, je me sens un peu démunie...
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
10 oct. 2012 à 10:06
(je n'arrive même pas à voir comment le module est rattaché au formulaire "Menu" : dans la feuille des propriétés, je ne vois rien...).
Le code est rattaché à l'objet "zone de liste" du formulaire menu, c'est pour cela que tu ne vois rien...

Sinon, tu es bien dans la bonne direction.

Tu as deux solutions pour régler ton problème :

- tu codes en dur les liens entre chaque table et la base dorsale
- tu crées une table non liée avec la dorsale, qui va contenir le chemin unc de la base dorsale, et à chaque ouverture de ton accde, tu vas remapper les liens entre l'accde et la dorsale.

Je peux t'aider à le faire, si tu le souhaites...
0
Merci pour ton aide mais il faut que tu saches que ça risque d'être un peu laborieux, mes connaissances en VBA sont encore une fois très limitées! Mais si tu veux, on peut essayer.

Entre les 2 solutions, je ne sais pas qu'elle est la plus adaptée sachant qu'au départ, je n'ai aucune connaissance de l'arborescence chez le "client"...
Quels sont les avantages et inconvénients des 2 méthodes?
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
10 oct. 2012 à 10:59
sachant qu'au départ, je n'ai aucune connaissance de l'arborescence chez le "client"...
Dans ce cas, il faut créer l'accde chez le client quand on connait son arborescence.

Je privilégie cependant le deuxième solution, qui a l'avantage de ne pas obliger à modifier le code à chaque changement de chemin.

Mais on peut aussi prévoir un truc qui va ouvrir une boite de dialogue dans laquelle on choisit la base visée, comme ça le fichier accde peut être créé où on veut. Mais il faut avoir confiance en l'utilisateur pour ne pas qu'il s'amuse à changer les chemins toutes les 5 minutes...
0
Je suis tout à fait pour le fait de ne pas avoir à modifier le code à chaque changement de chemin.

Concernant la boîte de dialogue, elle s'ouvre à l'ouverture du frontal :
- uniqt la 1ère fois pour établir les liens?
- à chaque ouverture du frontal?
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
10 oct. 2012 à 12:31
C'est comme on veut...
Mais il faut prévoir un lancement manuel possible...
0
Alors avec ouverture la 1ère fois pour établir les liens + lancement manuel au cas où....
Petites précisions avant de démarrer :
- le poste sur lequel je travaille n'est pas en réseau
- il pourra y avoir éventuellement 2 ou 3 bases dorsales
Est-ce que ça pose problème?
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
10 oct. 2012 à 15:01
- le poste sur lequel je travaille n'est pas en réseau
Peut être que ça peut limiter les tests...
- il pourra y avoir éventuellement 2 ou 3 bases dorsales
Si on ouvre une boite de dialogue, alors on peut choisir la dorsale que l'on veut, le fait qu'il y en ait 1, 2 ou 1000 ne change rien...
0
Alors si tu es d'accord on y va! (en espérant que les tests seront possibles...)
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
11 oct. 2012 à 09:31
Il faut déjà savoir de quoi tu disposes actuellement :

- une base frontale ?
- une base dorsale ?
- un formulaire qui s'ouvre automatiquement au lancement du frontal ?
0
Bonjour,
Il s'agit d'un applicatif multi-utilisateurs que j'ai développé qui se compose :

- d'une base frontale

- d'une base dorsale contenant des données à mettre à jour via la frontale

- de 2 autres bases dorsales non installées dans le même répertoire que la précédente : à partir de tables liées, je lance une requête qui va alimenter pour la 1ère et complémenter pour la seconde une table dans la 1ère base dorsale qui va permettre de faire des contrôles de cohérence. Cette phase peut être soit maintenue soit modifiée dans sa conception en fonction des clients. C'est pour ça que je te parlais d'une ou plusieurs bases dorsales

- un formulaire "MENU" s'ouvre automatiquement à l'ouverture de la base frontale via une macro autoexec. Ce formulaire est adossé à une table qui se trouve dans la base dorsale (si besoin est, il est possible de l'adosser à une table du frontal).
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
11 oct. 2012 à 10:54
Il faut donc que tu crées une table dans ta frontale, qui ne va contenir qu'un champ dans une seule ligne. Ce sera un booléen qui sera à 0 si c'est le premier lancement de la base, et qui donc lancera la procédure de choix des différentes dorsales à lier. Ce booléen sera mis à 1 ensuite et ne servira plus en théorie.
Ensuite, il faudra connaitre/établir la règle pour les tables liées : est-ce qu'elles pointeront toujours vers les même dorsales (en parlant du nom), mais que les répertoire pourront être différents ?
0
Ce sera un booléen qui sera à 0 : c'est quoi un booléen? Un champ vrai/faux? Quel nom pour la table et pour le champ?

- la 1ère base dorsale aura toujours le même nom
- les 2 autres (ou l'autre s'il n'y en a qu'une autre) peuvent être issues de n'importe quelles bases et se trouver n'importe où : encore une fois je pense qu'il m'est tout à fait possible de traiter le problème différemment, afin de ne plus avoir ces 2 autres dorsales.
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
11 oct. 2012 à 14:27
Un booléen peut être un champ vrai-faux.
Tu peux prendre ce que tu veux pour la table et le champ.

Pour le choix des différentes dorsales, il va falloir une règle de gestion pour chaque table puisqu'elle pourra, selon ce que tu me dis, être liée à une dorsale particulière. Qui décide cette répartition ?
0
OK pour le booléen.
- Nom de la table : TblLiaisonDorsale
- Nom du champ OUI/NON : Liaison

Pour les dorsales, après réflexion, je simplifie : je n'en conserve qu'une et je traiterais l'aspect contrôle différemment.
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
11 oct. 2012 à 16:54
Il faut donc exécuter un code à l'ouverture du formulaire qui va faire deux choses :

- vérifier la valeur du booléen
- exécuter le cas échéant la procédure de demande de changement des liens

Je ne pourrai malheureusement pas t'aider plus avant lundi, je serai AFK :-(
0
OK.
Encore une fois merci pour ton aide.
Bon WE et à lundi
0
blux Messages postés 26396 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 octobre 2024 3 308
15 oct. 2012 à 10:10
Si tu ne gardes qu'une dorsale, ça veut dire que toutes les tables (hors table TblLiaisonDorsale) y seront liées, c'est bien le cas ?
0