Gestion Access multi utilisateur [Résolu]

Messages postés
55
Date d'inscription
lundi 14 novembre 2005
Statut
Membre
Dernière intervention
23 juin 2008
- - Dernière réponse : cs_DARKSIDIOUS
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
- 27 déc. 2006 à 18:18
Bonjour à tous,

Voilà j'ai une appli VB6-Access 2000 en réseau.
J'ai une procédure automatique de backup de la base et de compactage de celle-ci à interval régulier.
- le 1 er utilisateur se connecte, le compactage se lance...
- le 2ème utilisateur se connecte et  là, message d'erreur (logique) !!

Ma question est la suivante :
Comment avertir le 2ème utilisateur qu'un compactage est en cours ?
Utilisez-vous juste la récupération de l'erreur ?

J'ai pensé à créer un fichier de type txt ou autre pendant le compactage pour servir de flag et avertir qu'une procédure est en cours et donc faire patienter l'utilisateur.
Cette solution ne me satisfait qu'à moitié car au moindre plantage le fichier reste et plus aucun utilisateur ne se connecte.
A priori le .ldb n'est pas dispo lors du compactage donc pas plus avancé.
Voilà merci à tous
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
82
3
Merci
Gère l'erreur directement ce sera moins galère, et surtout, beaucoup plus sûr !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 194 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
55
Date d'inscription
lundi 14 novembre 2005
Statut
Membre
Dernière intervention
23 juin 2008
0
Merci
Oui je crois que je vais rester là dessus.

Merci Darksidious.
Commenter la réponse de cs_molo molo
Messages postés
168
Date d'inscription
vendredi 9 janvier 2004
Statut
Membre
Dernière intervention
28 juillet 2009
0
Merci
Un autre truc : lorsque ton utilisateur veut se connecter, essaie simplement d'ouvrir ta MDB avec le FileSystemObject en mode R/W.   Si cela échoue, c'est que ta MDB est ouverte en mode exclusif (c'est le cas lors d'un compactage).   Il te suffit alors de proposer p.e. à ton utilisateur de revenir dans cinq minutes ou encore as-toi de mettre en place un timer qui l'avertit lorsque la DB est à nouveau accessible.

Christophe
Commenter la réponse de cavo789
Messages postés
55
Date d'inscription
lundi 14 novembre 2005
Statut
Membre
Dernière intervention
23 juin 2008
0
Merci
Bonjour Christophe et merci de ta réponse.

Seulement là tu me poses un problème, car je ne suis pas un utilisateur convaincu de FSO et encore moins du contrôle timer.

Ma solution effectivement va consister à intercepter l'erreur par une méthode ou une autre.

Merci encore et bonne prog à tous
Commenter la réponse de cs_molo molo
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
82
0
Merci
Oui surtout que ca sera sûrement plus optimisé que de créer un objet FSO !
Commenter la réponse de cs_DARKSIDIOUS