PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Réplication: j'ai besoin d'aide
Réplication: j'ai besoin d'aide
Débuté par Bruno F., 30 mar. 2005 18:05 - 6 réponses
Posté le 30 mars 2005 - 18:05
Bonjour

Je dois mettre en place une réplication de ma base hyperfile (une appli
mono-utilisateur qui doit passer en multi-utilisateur). J'ai suivi les
instructions de la doc, mais ça ne marche pas et je ne vois pas ce que j'ai
fait de faux.

J'ai créé une nouvelle version de l'appli ou l'utilisateur peu choisir si sa
base est une base Replica Maitre ou Abonné.
J'installe mon produit sur le serveur et je le lance pour configurer le
Réplica Maitre avec HCréeRéplicaMaitre. Je suppose qu'il suffit de le faire
une fois pour toute, non ?
Le fichier RPM est bien créé dans le répertoire des données que je met en
partage réseau... jusque là, tout va bien.

Ensuite, j'installe mon produit sur un poste client et je le configure en
Abonné avec HCréeRéplicaAbonné en lui passant en paramètre le chemin réseau
du fichier RPM. Le fichier RPL est bien créé, tout va bien.
Faut-il executer HCréeRéplicaAbonné une fois pour toute ou à chaque
lancement de mon appli ??

Ensuite, je veux syncroniser mes données avec HSynchroniseReplica en mode
bidirectionnel et là, il au bout de quelques secondes, la fonction se
termine en m'indiquant que l'opération a échoué.
Que s'est-il passé ?? pourquoi l'opération a-t-elle échoué?... qu'ai-je mal
fait ?

Autre question: Doit-on constament utiliser HSynchroniseReplica pour
synchroniser les données? N'y a-t-il pas moyen d'avoir une synchronisation
immédiate, autonome et transparente pour l'utilisateur lorsque l'abonné est
connecté au maitre ?

Un grand merci à celui (ou celle) qui m'aidera
A+
Bruno
Posté le 30 mars 2005 - 10:37
Merci pour votre réponse.

Si j'ai choisi la méthode de la réplication, c'est parce que certain postes
clients sont des PC portables qui peuvent être utilisés déconnecté du
réseau.

A+
Bruno

"JM" <jeanmorel@spam.com> a écrit dans le message de news:


La réplication doit vous servir à synchroniser des données de sites
distants par exemple la nuit.
Pour partager des données sur un réseau, la réplication n'est pas requise.
Il vous suffit d'utiliser dans votre projet les fonctions suivantes :
<hMode(hModeMulti)>
<hChangeRep(*, <CheminRéseau>)>
Ainsi tous les postes partage les mêmes données sans programmation.

J'espère avoir pu vous orienter.

Respectueuses salutations.
Jean MOREL (jeanmorel@ifrance.com)
Posté le 30 mars 2005 - 12:01
En effet, HCréeRéplicaAbonné et HCréeRéplicaMaitre. ne sont à utiliser qu'une fois. Celà permet de générer des fichiers.
N'oubliez pas de mettre en place la journalisation dans votre analayse.

Par contre, vous devez en effet, utiliser HSynchroniseReplica à chaque fois que vous voulez répliquer. Mais vous pouvez écrire se code sur le chargement de votre application par exemple (pour que ce soit tranparent). A vous de stocker les chemins d'accès dans des fichiers, par exemple, pour pouvoir les modifier facilement si besoin est.

Pour vorte problème, par conte,r je ne peux pas vous aider. Car j'ai eu ce problème sous WD7, WD8 et maintenant que j'ai WD9 je n'ai pas encore testé.
Posté le 30 mars 2005 - 18:33
La réplication doit vous servir à synchroniser des données de sites distants par exemple la nuit.
Pour partager des données sur un réseau, la réplication n'est pas requise. Il vous suffit d'utiliser dans votre projet les fonctions suivantes :
<hMode(hModeMulti)>
<hChangeRep(*, <CheminRéseau>)>
Ainsi tous les postes partage les mêmes données sans programmation.

J'espère avoir pu vous orienter.

Respectueuses salutations.
Jean MOREL (jeanmorel@ifrance.com)
Posté le 01 avril 2005 - 12:34
Bonjour,
je ne suis pas un pro mais il me semble que vous faites fausse route.
Il faut définir au départ qui est abonné ou maitre. (1Maitre, une multitude d'abonné)
Il faut bien activer la réplication et la journalisation dans la description des fichiers de ton analyse.
Ensuite il faut créer le réplica Maitre en premier et autant de réplica que nécessaire mais à partir de la meme analyse, donc même programme. Une fois ces réplicas crées il n'y aura plus besoin de le faire.
Il faut ensuite copier les réplica abonnés sur leur poste respectif (fichier *.RPL) et initialiser la synchronisation. Pour cela il faut avoir deux bases de données identique(le plus simple est de la copier) et exécuter une synchronisation. Ensuite les deux bases sont modifiable, la synchro s'effectuera en fonction des paramètres choisi.
Enfin à ma connaissance la fonction hsynchroniseréplica est obligatoire, c'est à vous de l'automatiser.
Posté le 01 avril 2005 - 19:50
Merci
Je pense avoir compris mon erreur en lisant votre mail.
Le programme gérant la base maitre et la base abonnée est exactement le
même, donc l'analyse est également pareil. La réplication et la
journalisation y sont activées.

En fait, ma base maitre contenait déjà des informations alors que je
démarrais un base abonnée vide sur le poste client en pensant que la
synchronisation allait la remplir.
Or, d'après ce que vous me dites, il faut que le les deux bases soient
strictement identiques (même au niveau du contenu) lors de la création de
l'abonné.
Par contre, cela signifie que cette procédure ne peut pas être automatisé à
l'installation. :-(

Je vais faire le test et je vous tiendrai au courant.
Merci encore
A+
Bruno

"Grégory Cailliez" <francois.guichard@acip.fr> a écrit dans le message de
news:

Bonjour,
je ne suis pas un pro mais il me semble que vous faites fausse route.
Il faut définir au départ qui est abonné ou maitre. (1Maitre, une
multitude d'abonné)
Il faut bien activer la réplication et la journalisation dans la
description des fichiers de ton analyse.
Ensuite il faut créer le réplica Maitre en premier et autant de réplica
que nécessaire mais à partir de la meme analyse, donc même programme. Une
fois ces réplicas crées il n'y aura plus besoin de le faire.
Il faut ensuite copier les réplica abonnés sur leur poste respectif
(fichier *.RPL) et initialiser la synchronisation. Pour cela il faut avoir
deux bases de données identique(le plus simple est de la copier) et
exécuter une synchronisation. Ensuite les deux bases sont modifiable, la
synchro s'effectuera en fonction des paramètres choisi.
Enfin à ma connaissance la fonction hsynchroniseréplica est obligatoire,
c'est à vous de l'automatiser.
Posté le 11 avril 2005 - 11:53
En effet que les deux bases soit strictement identiques à l'origine. Pour automatiser tout ça une copie des fichier HF dans l'exe du programme abonné est faisable, il suffit ensuite de proposer une initialisation de l'abonné au démarage avec selection des fichier HF servant de base abonné...