OVH Cloud OVH Cloud

Synchronisation d'une base Access

5 réponses
Avatar
stéphane
Bonjour,=20
je recherche un moyen (VBA ou autre) pour effectuer en=20
automatique (c'est =E0 dire lors de l'ouverture ou de la=20
fermeture de la base)la synchronisation d'une base Access.

5 réponses

Avatar
hm15
Bonjour Stéphane,

la réplication d'une base n'est pas ma tasse de thé...
Mais, à mon avis, c'est de ce côté-là que tu dois chercher.

Cordialement,

Annette
---------------------------------------------------------------------------
www.horizon-micro.com


"stéphane" a écrit dans le message de news:
0cbc01c39895$377947b0$
Bonjour,
je recherche un moyen (VBA ou autre) pour effectuer en
automatique (c'est à dire lors de l'ouverture ou de la
fermeture de la base)la synchronisation d'une base Access.
Avatar
J'ai fait des recherche dans l'aide de Access, j'ai déjà
créé mes bases répliqués (réplicats), je peux faire des
réplications en manuel entre les bases (via le menu outil
puis réplication), cela marche très bien. Comme cette base
est destiné à plusieurs utilisateurs, j'aimerais pouvoir
lancer automatiquement cette synchronisation entre les
différentes bases existante automatiquement lorsque ces
utilisateurs soit ouvrent ou ferment la base access. J'a
trouvé la fonction "acCmdSynchronizeNow" mais elle refuse
de lancer la réplication car la bae est ouverte. je donc
tenter de fermer toutes les formulaires ouverts, cela n'a
pas marché, j'ai tenté de lancer la
fonction "CloseCurrentDatabase", mais la synchronisation
ne s'effectue pas car la base est fermée...


-----Message d'origine-----
Bonjour Stéphane,

la réplication d'une base n'est pas ma tasse de thé...
Mais, à mon avis, c'est de ce côté-là que tu dois
chercher.


Cordialement,

Annette
----------------------------------------------------------
-----------------

www.horizon-micro.com


"stéphane" a écrit dans le
message de news:

0cbc01c39895$377947b0$
Bonjour,
je recherche un moyen (VBA ou autre) pour effectuer en
automatique (c'est à dire lors de l'ouverture ou de la
fermeture de la base)la synchronisation d'une base Access.


.



Avatar
PePiCK
Regardez ceci !

database.Synchronize pathname, [exchange]

Voir l'aide pour les explications

Bon Code !

PePiCK


a écrit dans le message de
news:055601c39899$71e77bc0$
J'ai fait des recherche dans l'aide de Access, j'ai déjà
créé mes bases répliqués (réplicats), je peux faire des
réplications en manuel entre les bases (via le menu outil
puis réplication), cela marche très bien. Comme cette base
est destiné à plusieurs utilisateurs, j'aimerais pouvoir
lancer automatiquement cette synchronisation entre les
différentes bases existante automatiquement lorsque ces
utilisateurs soit ouvrent ou ferment la base access. J'a
trouvé la fonction "acCmdSynchronizeNow" mais elle refuse
de lancer la réplication car la bae est ouverte. je donc
tenter de fermer toutes les formulaires ouverts, cela n'a
pas marché, j'ai tenté de lancer la
fonction "CloseCurrentDatabase", mais la synchronisation
ne s'effectue pas car la base est fermée...


-----Message d'origine-----
Bonjour Stéphane,

la réplication d'une base n'est pas ma tasse de thé...
Mais, à mon avis, c'est de ce côté-là que tu dois
chercher.


Cordialement,

Annette
----------------------------------------------------------
-----------------

www.horizon-micro.com


"stéphane" a écrit dans le
message de news:

0cbc01c39895$377947b0$
Bonjour,
je recherche un moyen (VBA ou autre) pour effectuer en
automatique (c'est à dire lors de l'ouverture ou de la
fermeture de la base)la synchronisation d'une base Access.


.



Avatar
Stéphane
J'ai un porblème: jene trouve pas cette fonction ni dans
l'aide, ni dans les objets VBA... serait-il possible
d'avoir la syntaxe exacte ?

Merci
-----Message d'origine-----
Regardez ceci !

database.Synchronize pathname, [exchange]

Voir l'aide pour les explications

Bon Code !

PePiCK


a écrit dans le
message de

news:055601c39899$71e77bc0$
J'ai fait des recherche dans l'aide de Access, j'ai déjà
créé mes bases répliqués (réplicats), je peux faire des
réplications en manuel entre les bases (via le menu outil
puis réplication), cela marche très bien. Comme cette base
est destiné à plusieurs utilisateurs, j'aimerais pouvoir
lancer automatiquement cette synchronisation entre les
différentes bases existante automatiquement lorsque ces
utilisateurs soit ouvrent ou ferment la base access. J'a
trouvé la fonction "acCmdSynchronizeNow" mais elle refuse
de lancer la réplication car la bae est ouverte. je donc
tenter de fermer toutes les formulaires ouverts, cela n'a
pas marché, j'ai tenté de lancer la
fonction "CloseCurrentDatabase", mais la synchronisation
ne s'effectue pas car la base est fermée...


-----Message d'origine-----
Bonjour Stéphane,

la réplication d'une base n'est pas ma tasse de thé...
Mais, à mon avis, c'est de ce côté-là que tu dois
chercher.


Cordialement,

Annette
---------------------------------------------------------
-


-----------------
www.horizon-micro.com


"stéphane" a écrit dans le
message de news:

0cbc01c39895$377947b0$
Bonjour,
je recherche un moyen (VBA ou autre) pour effectuer en
automatique (c'est à dire lors de l'ouverture ou de la
fermeture de la base)la synchronisation d'une base
Access.




.




.




Avatar
PePiCK
Pourtant, c'est un copy/paste de l'aide Access 2000 !

Voici le texte complet

' // ************************************
Synchronize, méthode

Synchronise deux duplicatas (bases de données Microsoft Jet uniquement).

Syntaxe

database.Synchronize pathname, exchange

La syntaxe de la méthode Synchronize comprend les éléments suivants :

Élément Description
database Variable objet représentant un objet Database qui est un
duplicata.
pathname Donnée de type String contenant le chemin d'accès au
duplicata cible avec lequel la base de données database sera synchronisée.
L'extension de fichier .mdb est facultative.
Exchange Facultatif. Constante indiquant dans quelle direction
synchroniser les différences entres les deux bases de données, comme indiqué
dans la section Valeurs.



Valeurs

Vous pouvez affecter les constantes suivantes à l'argument exchange. L'une
des trois premières constantes peut être utilisée avec ou sans la quatrième.

Constante Description
dbRepExportChanges Envoie des modifications de database vers pathname.
DbRepImportChanges Envoie des modifications de pathname vers database.
DbRepImpExpChanges (Valeur par défaut) Envoie des modifications depuis
database vers pathname, et vice-versa ; également appelé échange
bidirectionnel.
DbRepSyncInternet Échange des données entre des fichiers connectés
via un chemin d'accès Internet.



Remarques

Utilisez la méthode Synchronize pour échanger des données et des
modifications de structure entre deux bases de données. Les modifications de
structure sont toujours traitées en premier. Les deux bases de données
doivent se trouver au même niveau structurel pour que les données puissent
être échangées. Par exemple, un échange du type dbRepExportChanges peut
entraîner des modifications structurelles sur le duplicata en cours, même si
les modifications de données sont, elles, synchronisées depuis l'argument
database vers la cible pathname.

Le duplicata identifié par pathname doit faire partie du même ensemble de
duplicatas. Si les deux duplicatas présentent des valeurs de propriété
ReplicaID identiques, ou bénéficient du statut de structure maître pour deux
ensembles de duplicatas différents, la synchronisation échouera.

Lorsque vous synchronisez deux duplicatas sur Internet, vous devez utiliser
la constante dbRepSyncInternet. Indiquez l'adresse URL (Uniform Resource
Locator) de l'argument pathname au lieu d'indiquer le chemin d'un réseau
local.

Note Vous ne pouvez synchroniser des duplicatas partiels avec d'autres
duplicatas partiels. Pour plus d'informations, voir la méthode
PopulatePartial.

La synchronisation sur Internet nécessite le produit Replication Manager,
disponible uniquement dans Microsoft Office 97, Édition Développeur.

' // ************************************

Un petit exemple aussi !

' // ************************************
Cet exemple illustre l'échange de modifications entre la base de données
duplicable Comptoir et un duplicata. Il s'agit de l'argument par défaut de
cette méthode.

Sub TwoWayExchangeX()

Dim dbsNorthwind As Database

Set dbsNorthwind = OpenDatabase("Comptoir.mdb")

' Envoie les modifications apportées dans chaque
' duplicata à l'autre duplicata.
dbsNorthwind.Synchronize "Nwreplica.mdb", _
dbRepImpExpChanges

dbsNorthwind.Close

End Sub
' // ************************************PePiCK

"Stéphane" a écrit dans le message de
news:0b9f01c398a9$c4e65430$
J'ai un porblème: jene trouve pas cette fonction ni dans
l'aide, ni dans les objets VBA... serait-il possible
d'avoir la syntaxe exacte ?

Merci
-----Message d'origine-----
Regardez ceci !

database.Synchronize pathname, [exchange]

Voir l'aide pour les explications

Bon Code !

PePiCK


a écrit dans le
message de

news:055601c39899$71e77bc0$
J'ai fait des recherche dans l'aide de Access, j'ai déjà
créé mes bases répliqués (réplicats), je peux faire des
réplications en manuel entre les bases (via le menu outil
puis réplication), cela marche très bien. Comme cette base
est destiné à plusieurs utilisateurs, j'aimerais pouvoir
lancer automatiquement cette synchronisation entre les
différentes bases existante automatiquement lorsque ces
utilisateurs soit ouvrent ou ferment la base access. J'a
trouvé la fonction "acCmdSynchronizeNow" mais elle refuse
de lancer la réplication car la bae est ouverte. je donc
tenter de fermer toutes les formulaires ouverts, cela n'a
pas marché, j'ai tenté de lancer la
fonction "CloseCurrentDatabase", mais la synchronisation
ne s'effectue pas car la base est fermée...


-----Message d'origine-----
Bonjour Stéphane,

la réplication d'une base n'est pas ma tasse de thé...
Mais, à mon avis, c'est de ce côté-là que tu dois
chercher.


Cordialement,

Annette
---------------------------------------------------------
-


-----------------
www.horizon-micro.com


"stéphane" a écrit dans le
message de news:

0cbc01c39895$377947b0$
Bonjour,
je recherche un moyen (VBA ou autre) pour effectuer en
automatique (c'est à dire lors de l'ouverture ou de la
fermeture de la base)la synchronisation d'une base
Access.




.




.