OVH Cloud OVH Cloud

Access en réseau

3 réponses
Avatar
Monkeytoo
Bonjour à tous,
pourriez-vous m'indiquer quelle est la manière la plus appriopriée d'ouvrir
(pour modification) un enregistrement d'une table liée sur un réseau
multi-utilisateur afin que la base ne soit pas corrompue en cas de coupure
réseau.
Merci d'avance
(Le formulaire de modification est en mode formulaire unique et pas en
continu)

3 réponses

Avatar
Sylvain Lafontaine
Si votre réseau n'est pas solide comme le roc, la seule façon vraiment
fiable serait de remplacer le backend Access par SQL-Server. La version
gratuite (SQL-Server 2005 Express) devrait vous convenir.

Une autre possibilité serait d'utiliser TS mais des sous ($) seraient
probablement à prévoir.

Notez que même dans le cas de SQL-Server, même si les possibilités de
corruption physique à cause du réseau serait pratiquement réduite à zéro; la
possibilité d'avoir une corruption logique resterait si votre formulaire
met-à-jour plus d'une table à la fois. Pour éliminer ces dernières, la
seule façon serait alors de remplacer les formulaires liées d'Access par des
formulaires non-liées et de faire les mises-à-jour manuellement (code VBA)
en utilisant les transactions.

Vous pouvez également avoir des transactions en utilisant Access/JET comme
backend mais ces transactions sont plus ou moins factices et ne résisteront
pas à une coupure réseau (contrairement au cas de SQL-Server).

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"Monkeytoo" wrote in message
news:
Bonjour à tous,
pourriez-vous m'indiquer quelle est la manière la plus appriopriée
d'ouvrir
(pour modification) un enregistrement d'une table liée sur un réseau
multi-utilisateur afin que la base ne soit pas corrompue en cas de coupure
réseau.
Merci d'avance
(Le formulaire de modification est en mode formulaire unique et pas en
continu)


Avatar
Monkeytoo
Bonsoir et merci déjà,
mais que voulez-vous dire par utiliser un formulaire non-lié ?
Je pense que je dois prendre en mémoire un enregistrement d'une table
et l'afficher dans un formulaire. Ensuite je dois pouvoir mettre à
jour la table liée.
Où puis-je trouver un exemple concret de ce type de procédure ?

Si votre réseau n'est pas solide comme le roc, la seule façon vraiment
fiable serait de remplacer le backend Access par SQL-Server. La version
gratuite (SQL-Server 2005 Express) devrait vous convenir.

Une autre possibilité serait d'utiliser TS mais des sous ($) seraient
probablement à prévoir.

Notez que même dans le cas de SQL-Server, même si les possibilités de
corruption physique à cause du réseau serait pratiquement réduite à zéro; la
possibilité d'avoir une corruption logique resterait si votre formulaire
met-à-jour plus d'une table à la fois. Pour éliminer ces dernièr es, la
seule façon serait alors de remplacer les formulaires liées d'Access par des
formulaires non-liées et de faire les mises-à-jour manuellement (code VBA)
en utilisant les transactions.

Vous pouvez également avoir des transactions en utilisant Access/JET co mme
backend mais ces transactions sont plus ou moins factices et ne résiste ront
pas à une coupure réseau (contrairement au cas de SQL-Server).

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"Monkeytoo" wrote in message
news:
Bonjour à tous,
pourriez-vous m'indiquer quelle est la manière la plus appriopriée
d'ouvrir
(pour modification) un enregistrement d'une table liée sur un réseau
multi-utilisateur afin que la base ne soit pas corrompue en cas de coup ure
réseau.
Merci d'avance
(Le formulaire de modification est en mode formulaire unique et pas en
continu)




Avatar
Sylvain Lafontaine
Les formulaires non-liés sont tout simplement des formulaires sans Record
Source de défini; vous devez donc vous charger vous-même de remplir les
champs à partir d'une source quelconque et de sauvegarder le tout lorsque
nécessaire.

Cette technique est décrite dans plusieurs livres (comme celui de Mary
Chipman et Andy Baron, Microsoft Access Developer's Guide to SQL Server, si
ma mémoire est bonne) mais je ne la recommenderais pas à un débutant.

Il serait bon pour vous de vraiment définir vos risques potentiels de
coupure réseau et de voir si cela en vaut la peine de traiter le problème ou
non.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"Monkeytoo" wrote in message
news:
Bonsoir et merci déjà,
mais que voulez-vous dire par utiliser un formulaire non-lié ?
Je pense que je dois prendre en mémoire un enregistrement d'une table
et l'afficher dans un formulaire. Ensuite je dois pouvoir mettre à
jour la table liée.
Où puis-je trouver un exemple concret de ce type de procédure ?

Si votre réseau n'est pas solide comme le roc, la seule façon vraiment
fiable serait de remplacer le backend Access par SQL-Server. La version
gratuite (SQL-Server 2005 Express) devrait vous convenir.

Une autre possibilité serait d'utiliser TS mais des sous ($) seraient
probablement à prévoir.

Notez que même dans le cas de SQL-Server, même si les possibilités de
corruption physique à cause du réseau serait pratiquement réduite à zéro;
la
possibilité d'avoir une corruption logique resterait si votre formulaire
met-à-jour plus d'une table à la fois. Pour éliminer ces dernières, la
seule façon serait alors de remplacer les formulaires liées d'Access par
des
formulaires non-liées et de faire les mises-à-jour manuellement (code VBA)
en utilisant les transactions.

Vous pouvez également avoir des transactions en utilisant Access/JET comme
backend mais ces transactions sont plus ou moins factices et ne
résisteront
pas à une coupure réseau (contrairement au cas de SQL-Server).

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"Monkeytoo" wrote in message
news:
Bonjour à tous,
pourriez-vous m'indiquer quelle est la manière la plus appriopriée
d'ouvrir
(pour modification) un enregistrement d'une table liée sur un réseau
multi-utilisateur afin que la base ne soit pas corrompue en cas de
coupure
réseau.
Merci d'avance
(Le formulaire de modification est en mode formulaire unique et pas en
continu)