Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

WD7.5 Urgent Réplication + synchronisation

5 réponses
Avatar
MSY
Avez vous des exemples de réplication + synchronisation de plusieurs postes
abonnées sur un poste maitre mais en FTP ou par courriel ?

Voici ce que nous devons faire
(répliquer et synchroniser)

________ ___________
| | <-----> | site distant 1 |
|Poste | ---------------
|maitre | ___________
| | <-----> | site distant 2 |
---------- ---------------

Exemple.
Le site distant 1 et le site distant2 entre des données de 8h00 am à 17h00
pm.
Le site distant 1 envoie sa réplication par ftp a minuit et le site distant
2 envoie sa réplication par ftp a 1h00 am.

Vers 3h00am, le poste maitre doit synchroniser ses données avec ceux du site
distant 1 et ceux du site distant 2 pour ensuite renvoyer les nouvelles
données sur le ftp.

En théorie, le site distant 1 et 2 devrait synchroniser leurs postes avec
les nouvelles données qui sont sur le ftp.

Le problème est que Windev fourni un exemple d'un poste maitre et un poste
abonné sur le meme ordinateur. De cette facon, tout va bien. Si je prends le
même exemple pour ensuite envoyer mes réplications a distance pour ensuite
les synchroniser le poste maitre, j'ai toujours et toujours des erreurs
disant qu'il ne reconnait pas les RPL et qu'ils ne coordonnent jamais avec
le RPM. Donc, je dois surement pas faire la bonne séquence. Dans le fonds,
l'exemple de windev ne sert qu'a titre d'exemple sur simuler 2 postes...

Si vous avez un exemple complet d'un poste maitre et d'un poste abonné qui
se réplique et synchronise soit par ftp ou courriel mais pas en réseau
local.

S.v.p. répondre a ce message, nous laisser une piece jointe avec le projet
si vous avez un site web sinon, me l'envoyer par courriel a
davidroy@bois-francs.com et je vais l'intégrer sur mon site parce qu'il y a
beaucoup beaucoup de gens qui ont le même problème que moi. Je commence a
couter chere en recherche et développement. :)

Merci

5 réponses

Avatar
Sébastien MAZET
Bonjour,
Pour notre part nous utilisons une réplication
gérée entièrement par nos soins.
- Sur la base de données,
- Ajout de rubriques sur les fichiers ( code site distant / modifie (oui
/ non) etc )
- en têtes de codes différents par site ( pas d'id auto)
- Transfert par FPT / TCP IP, modem , VPN ou autre
- Contrôle de validité du transfert sur le site maître
- Moulinette de réplication
- Renvoi des données traitées vers le site distant.
- LOG de tous les traitements

C'est assez lourd et nécessite une maintenance importante
en cas d'incident.

Voir aussi possibilité de VPN + Terminal Serveur


Cordialement,
Sébastien



--
--
"MSY" a écrit dans le message de
news:YYBKb.136356$
Avez vous des exemples de réplication + synchronisation de plusieurs


postes
abonnées sur un poste maitre mais en FTP ou par courriel ?

Voici ce que nous devons faire
(répliquer et synchroniser)

________ ___________
| | <-----> | site distant 1 |
|Poste | ---------------
|maitre | ___________
| | <-----> | site distant 2 |
---------- ---------------

Exemple.
Le site distant 1 et le site distant2 entre des données de 8h00 am à 17h00
pm.
Le site distant 1 envoie sa réplication par ftp a minuit et le site


distant
2 envoie sa réplication par ftp a 1h00 am.

Vers 3h00am, le poste maitre doit synchroniser ses données avec ceux du


site
distant 1 et ceux du site distant 2 pour ensuite renvoyer les nouvelles
données sur le ftp.

En théorie, le site distant 1 et 2 devrait synchroniser leurs postes avec
les nouvelles données qui sont sur le ftp.

Le problème est que Windev fourni un exemple d'un poste maitre et un poste
abonné sur le meme ordinateur. De cette facon, tout va bien. Si je prends


le
même exemple pour ensuite envoyer mes réplications a distance pour ensuite
les synchroniser le poste maitre, j'ai toujours et toujours des erreurs
disant qu'il ne reconnait pas les RPL et qu'ils ne coordonnent jamais avec
le RPM. Donc, je dois surement pas faire la bonne séquence. Dans le fonds,
l'exemple de windev ne sert qu'a titre d'exemple sur simuler 2 postes...

Si vous avez un exemple complet d'un poste maitre et d'un poste abonné qui
se réplique et synchronise soit par ftp ou courriel mais pas en réseau
local.

S.v.p. répondre a ce message, nous laisser une piece jointe avec le projet
si vous avez un site web sinon, me l'envoyer par courriel a
et je vais l'intégrer sur mon site parce qu'il y


a
beaucoup beaucoup de gens qui ont le même problème que moi. Je commence a
couter chere en recherche et développement. :)

Merci




Avatar
Fabrice Burghgraeve
Bonjour.

"Sébastien MAZET" a écrit dans le message de
news:btgeac$bh6$
Bonjour,
Pour notre part nous utilisons une réplication
gérée entièrement par nos soins.


(...)

Au moins vous avez le controle sur le code ... Si ca deconne vous pouvez
savoir ce qui se passe.

Mais quand meme comme vous dites :
C'est assez lourd et nécessite une maintenance importante
en cas d'incident.




A mon avis, ce que voulais faire le contributeur, c'est d'utiliser la
replication de windev.
C'est marqué sur la boite de windev 7.0, parmi les fonctionnalites :
replication.
Et c'est marque dans la doc papier page 1134.
(enfin le principe. Pour l'utilisation, ca renvoit a l'aide en ligne.
Ou l'on apprend avec joie que : << La réplication des données est une
fonctionnalité très puissante.
(...)

WinDev permet de réaliser ces opérations simplement. Pour plus de détails,
consultez Réplication avec WinDev. )







oui oui windev 7.0.
pas 7.5 meme si cette fonctionnalite n'etait pas fonctionnelle en 7.0
(tromperie sur la marchandise ??? )

Alors peut etre que le contributeur, qui a payé pour un L5G (sic) qui gere
la replication voudrait utiliser ce pour quoi il a payé, plutot que de
devoir le refaire lui-meme.

D'ailleurs, au passage, je voies ici et en face pas mal de posts de
personnes qui n'arrivent pas a utiliser la replication,
mais jamais un de quelqu'un qui y arrive sans problemes. (a part vous, mais
sans passer par la replication windev)

Enfin. Heureusement, dans windev 8 il y a la replication. (je pense.
j'essaye de regarder la brochure completea partir de
http://www.pcsoft.fr/windev/broch8/index.html , et je me retrouve sur la
liste des nouveautes de windev 8 qui dit que il arrive bientot... Je ne
trouve pas la brochure complete)
Alors si le contributeur a acheté winde 7 pour la replication, yaka acheter
windev 8 pour la replication et esperer que cette fois ci ca marche et qu'il
ne se sera pas fait abuser par un discours commercial optimiste (pour ne pas
dire trompeur)

(Vous aurez compris que ce message n'est pas une attaque contre votre
solution qui est probablement la meilleure, ou la moins pire dans le cas
present, mais contre la politique commerciale de PCSOFT qui consiste a
vendre le programme avant de l'avoir codé)

--
Fabrice Burghgraeve
Computer & Services
suivez ce lien pour me repondre en prive :
http://cerbermail.com/?I3GMPRuXDD
Avatar
Sébastien MAZET
> (Vous aurez compris que ce message n'est pas une attaque contre votre
solution qui est probablement la meilleure, ou la moins pire dans le cas
present, mais contre la politique commerciale de PCSOFT qui consiste a
vendre le programme avant de l'avoir codé)



Bonjour,
j'ai bien compris, je vois qu'il existe des rancunes tenaces.
Pour notre part, nous utilisons Windev comme un langage.
Jamais de RAD ou autre réutilisation de LST ou autre programme,
afin de maîtriser tout le code et processus.
La réplication est à mon avis assez spécifique
à chaque logiciel.

A tester sur la version 8 ...

Sébastien
Avatar
MSY
Je ne crois pas que ce soit de la rancune.
Mais dans mon cas c'est qu'ils nous promets des outils super documenté et
ils parlent de la réplication depuis la version 5.5.

Je crois plutot que le probleme est que (savoir avant) que j'aurais a
chercher 2 semaines pour rien. hey bien je l'aurais programmer moi même.

En passant, j'ai trouvé mon bobo pour la réplication en FTP . Je suis encore
en teste. Aussitot que mes testes sont terminé. (sur 50 tables avec IDAuto 8
Octets). Je vais écrire une procédure complète la dessus et je vais vous la
donner.

Pour l'instant, ce bout de document tiré de l'aide windev est la meilleur
pour l'instant que j'ai trouvé. Si nous suivont ses étape, ca fonctionne
pour répliquer vers le maitre plusieurs poste abonnée par support
transportable en FTP. Ca fonctionne bien (pour l'instant) pour la synchro
des postes sur le maitre (J'ai essayé seulement sur une table pour l'instant
et non les 50 tables) et ca fonctionne bien. Mais il me reste a synchroniser
toutes mes postes abonnées avec les nouvelles données du maitre.

Donc de renvoyer un WDZ sur le serveur et que mes poste abonnée le récupère
pour le synchroniser.


La réplication par support transportable




Qu'est-ce que c'est ?

La réplication par support transportable correspond à l'opération
effectuée pour synchroniser deux bases de données complètement inaccessibles
entre elles.

L'exemple le plus courant correspond à deux sites éloignés
géographiquement : un site à Montpellier et un site à Paris par exemple.
Régulièrement des mises à jour des bases de données sont effectuées grâce à
divers support : transfert par FTP, par disquette ou CD ROM, FTP, ...




Les actions possibles

La réplication par support transportable permet uniquement de réaliser
une réplication mono directionnelle :

soit du poste maître vers les postes abonnés

soit des poste abonnés vers le poste maître




Contraintes et conseils

Pour gérer la réplication dans une application, la table des
opérations du journal (fichier JournalOpération.fic) doit être identique
pour tous les fichiers en réplication dans une même analyse.

Il est conseillé d'enregistrer les fichiers nécessaires à la
réplication (fichiers *.RPM et *.RPL) dans un sous répertoire RPL des
fichiers de données de l'application.

Si la journalisation est utilisée uniquement pour la réplication, les
fichiers journaux peuvent être placés dans le répertoire de l'application
(ou dans un sous répertoire).

Si la journalisation est utilisée pour conserver une sauvegarde des
fichiers, il est conseillé de placer ces fichiers sur un disque différent de
celui des fichiers de données (pour plus de sécurité).




Par programmation

Les opérations à faire pour synchroniser le poste maître avec le poste
abonné par exemple sont les suivantes :

1. Création sur le poste maître :

du réplica maître (fonction W-Langage HCréeRéplicaMaître).

du réplica abonné sur le poste abonné (fonction W-Langage
HCréeRéplicaAbonné). Chaque poste abonné doit être associé à un identifiant
spécifique. Cet identifiant sera utilisé lors de la synchronisation.

Ces deux réplica peuvent être créés dans le même répertoire
(déconseillé).

2. Le fichier du réplica abonné doit être installé sur le poste
abonné. Ce fichier peut être installé :

soit dans le répertoire de réplication indiqué dans l'analyse (sous
répertoire RPL des fichiers de données par défaut).

soit dans un autre répertoire. Dans ce cas, l'application abonnée
doit utiliser la fonction HChangeRepRPL pour indiquer où le fichier du
réplica abonné doit être recherché. En effet, à l'ouverture du fichier de
données abonné, le fichier RPL est lu pour définir la plage des identifiants
automatiques utilisés par le fichier de donnés.

3. Utilisation des applications maître et abonnées.

4. Sur le poste abonné, création du réplica transportable (fonction
W-Langage HCréeRéplicaTransportable). Par défaut, un fichier d'extension WDZ
est créé. Ce fichier doit être transmis par un moyen quelconque au poste
maître.

5. Synchronisation sur le poste maître (fonction HSynchroniseRéplica).
Pour effectuer cette synchronisation, il est nécessaire de préciser :

le nom et le chemin du réplica transportable sur le poste maître

l'identifiant du réplica abonné (spécifié lors de la création du
réplica abonné).

Attention : Ce paragraphe suppose que les opérations nécessaires ont
été réalisées dans l'analyse de l'application avant installation de
l'application sur les différents postes. Pour plus de détails sur les
opérations à effectuer, consultez Réplication avec WinDev.



Fonctions W-Langage permettant de gérer la réplication




Fonctions de gestion de la réplication

Les fonctions W-Langage permettant de gérer la réplication sont les
suivantes :



HChangeRepRPL
Modifie l'emplacement de la description du réplica abonné
(fichier RPL). Cette fonction doit être utilisée sur le poste abonné.

HCréeRéplicaAbonné
Crée le fichier de description d'un réplica abonné (fichier
ReplicaAbonne.RPL).

HCréeRéplicaMaître
Crée le fichier de description d'un réplica maître (fichier
Replicamaitre.RPL).

HCréeRéplicaTransportable
Crée un fichier qui peut être utilisé pour répliquer les données
de la base de données en cours vers une base de données distante (pour envoi
par eMail ou disquette par exemple).

HGèreRéplication
Débranche (ou re-branche) temporairement la réplication. Par
défaut, la réplication est automatiquement gérée.

HInitAbonné
Initialise la plage d'identifiants automatiques d'un fichier de
description d'un réplica abonné (extension ".RPL").

HSynchroniseRéplica
Synchronise un réplica maître et un réplica abonné.







"Sébastien MAZET" a écrit dans le message de
news:bth59t$vsj$

> (Vous aurez compris que ce message n'est pas une attaque contre votre
> solution qui est probablement la meilleure, ou la moins pire dans le cas
> present, mais contre la politique commerciale de PCSOFT qui consiste a
> vendre le programme avant de l'avoir codé)

Bonjour,
j'ai bien compris, je vois qu'il existe des rancunes tenaces.
Pour notre part, nous utilisons Windev comme un langage.
Jamais de RAD ou autre réutilisation de LST ou autre programme,
afin de maîtriser tout le code et processus.
La réplication est à mon avis assez spécifique
à chaque logiciel.

A tester sur la version 8 ...

Sébastien









begin 666 smallblue.gif
M1TE&.#EA"@`*`-7_`,# P!P30"4:4AL3.A60R 71"<<6!L3/#0F=3<H>2TA
#$D:B4;4"$;3S<I¼#,F;#XP>T,TA3DM;51%F"PD
M359(E5-(A&99H3LU5R 821P5/BTE6%]7ADU(:&->?@``````````````````
M````````````````````````````````````````````````````````````
M`````````````````````````````````"'Y! $`````+ `````*``H`0 8P
M0(!P2"2..J+B!L&I/ 20HB5"*88,$$=@D"EZAQI,@K$@7B2*1(-0(((GGA
%6PP"`#L`
`
end
Avatar
MSY
Comme promis, je vous envoie la seul procédure que j'ai réussi a faire pour
faire une synchro parfaite sans erreurs d'intégrité et doublons etc... Si
vous avez des suggestions, nésitez pas parce qu'il doit rester place a
amélioration pour cette procédure.


Première étape:

---MAITRE---

Nous installons le poste maitre.
Le poste maitre crée son RPM

Le poste maitre crée les RPL pour toutes les abonnées.
Voici l'arborescence des fichiers produits.

/donnees (Contient toutes les données Client.FIC...)
/donnes/JNL (Contient les fichiers journaux)
/donnes/RPL (Répertoire réplication)
/donnes/RPL/Maitre (Répertoire contenant le RPM du maitre)
/donnes/RPL/Abonne1 ... Abonne10 (Répertoire contenant les .RPL de chaques
abonnées et ayant une plage d'identifiants automatique différent)

Une fois que le maître a créé toutes les fichiers .RPL, il envoie ces même
fichier sur FTP.
Voici l'arborescence en FTP

FTP://RPL (Répertoire réplication)
FTP://RPL/Maitre (Contient le fichier ReplicaTransportable.RPM et
ultérieurement le fichier transportable Maitre.WDZ)
FTP://RPL/Abonne1 ... Abonne10 (Contient les fichier .RPL créé par le poste
maitre et les fichier transportable .WDZ qui sera créé ultérieurement sur
les postes abonnées)

Bon, là les fichiers RPL et RPM sont sur le serveur.

---POSTE ABONNEE---
Arborescence

/donnees (Contient toutes les données Client.FIC...)
/donnes/JNL (Contient les fichiers journaux)
/donnes/RPL (Répertoire réplication)
/donnes/RPL/Abonne1

J'installe les postes Abonne1. (l'analyse est bien configuré pour Réplica et
Journalisation avec Identifiant auto 8octects)
Avant de faire quoi que se soit, je récupère le fichier RPL du poste Abonne1
et le fichier RPM en FTP.
Quand j'ouvre le programme Abonne1, j'affecte le .RPL avec
HChangeRepRPL(RepertoireData+"RPLAbonne1Abonne1.RPL")
Donc, ma plage de donnée est de 1000000 à 2000000. Aucun conflit avec mon
poste maitre qui lui est de 0 à 1000000.

J'entre dans mon poste abonne1 et je crée de nouvelles données dans
Client.FIC.
Automatiquement il me crée les fichiers nécessaire dans
/donnees/JNL/Client_JNL.FIC etc...
Ensuite, quand j'ai fini d'entrer des données dans le poste Abonne1, je
réplique mes données avec HCréeRéplicaTransportable.
Il me crée un fichier dans /donnees/RPL/Abonne1/Abonne1.WDZ.
Abonne1.WDZ contient les fichier Journaux avec mes transactions effectuées
dans Client.FIC. Contient aussi un fichier ReplicaTransportable.RPM. Je n'ai
pas le ReplicaTransportable.RPL dedans. Et j'ai eu plein de problème de
synchro a cause de ca. les fichier RPL et RPM créé dans mon WDZ ne
fonctionne pas bien quand je veux synchroniser sur le poste maitre) Donc
j'efface les fichier RPM et RPL dans le Abonne1.WDZ. Donc, il ne contient
que les fichiers journaux.
J'envoie par FTP le fichier /donnees/RPL/Abonne1/Abonne1.WDZ dans
FTP://RPL/Abonne1/Abonne1.WDZ

---MAITRE---
Je retourne sur mon poste maitre.
J'entre des données dans le Client.FIC.
Ensuite, je synchronise les données avec l'Abonne1.(Voici la procédure)
Je récupère mon fichier FTP://RPL/Abonne1/Abonne1.WDZ et je le copie dans
/donnes/RPL/Abonne1/Abonne1.WDZ.
Comme j'ai indiqué précédemment, j'ai dû enlever les fichiers RPM et RPL de
mon fichier Abonne1.WDZ parce qu'il ne coordonne jamais avec ma
synchronisation du poste maître. Donc j'ajoute mon fichier
/donnes/RPL/Maitre/ReplicaTransportable.RPM et mon fichier
/donnes/RPL/Maitre/ReplicaTransportable.RPL dans l'archive de mon fichier
Abonne1.WDZ.

Maintenant, je peux synchroniser avec
HSynchroniseRéplica(RepertoireData+"RPLMaitreReplicaTransportable.RPM",Re
pertoireData+"RPLMaitreMaitre.WDZ",rplVersMaître)
Donc, toute mes données sont synchronisé et dans le fichier Maitre.WDZ.
Comme indiqué précédemment, de doit enlever les fichiers .RPM et .RPL de
l'archive pour ensuite les réaffecté avec le .RPL et .RPM qui sont sur le
poste Abonne1.
J'envoie le fichier /donnes/RPL/Maitre/Maitre.WDZ sur le serveur
FTP://RPL/Maitre/Maitre.WDZ.

---POSTE ABONNEE---

Je dois synchroniser mes données avec ceux du poste maitre. pour avoir
toutes les dernière données.
Je retire le fichier FTP://RPL/Maitre/Maitre.WDZ pour le copier en local
dans /donnes/RPL/Maitre/Maitre.WDZ.
J'ajoute mon fichier /donnes/RPL/Maitre/ReplicaTransportable.RPM et
/donnes/RPL/Abonne1/ReplicaTransportable.RPL dans mon archive
/donnes/RPL/Maitre/Maitre.WDZ que je viens de récupérer.
Je synchronise avec
HSynchroniseRéplica(RepertoireData+"RPLMaitreMaitre.WDZ","",rplVersAbonné
)
La synchronisation sur le poste abonné est maintenant effectué.



---Chose importante a ne pas oublier---
Quand nous avons fini de synchroniser sur le poste maitre, nous devons
effacer son répertoire /donnes/JNL et faire la même chose sur les postes
abonnées sinon, a la prochaine synchronisation, nous allons nous retrouver
avec des problèmes de doublons et intégrité. Donc, je ne peux me servire du
JNL pour la journalisation mais seulement pour la réplication.





Est-ce normal que je passe par tout se chemin pour que ca fonctionne ? Parce
que j'ai suivi toutes les instructions de l'aide Windev 7.5 pendant des
semaines et essayé de trouver des exemples et les FAQ, NEWSGROUP, Recherche
Internet etc... et la seul chose que je vois, ce sont de mauvaise
expériences sur ce sujet.
Si je me prends de la mauvaise facon, j'aimerais avoir soit un exemple
complet sur ce sujet de la synchronisation (par fichier transportable via
ftp ou email) ou du moins la bonne procédure.



"MSY" a écrit dans le message de
news:YYBKb.136356$
Avez vous des exemples de réplication + synchronisation de plusieurs


postes
abonnées sur un poste maitre mais en FTP ou par courriel ?

Voici ce que nous devons faire
(répliquer et synchroniser)

________ ___________
| | <-----> | site distant 1 |
|Poste | ---------------
|maitre | ___________
| | <-----> | site distant 2 |
---------- ---------------

Exemple.
Le site distant 1 et le site distant2 entre des données de 8h00 am à 17h00
pm.
Le site distant 1 envoie sa réplication par ftp a minuit et le site


distant
2 envoie sa réplication par ftp a 1h00 am.

Vers 3h00am, le poste maitre doit synchroniser ses données avec ceux du


site
distant 1 et ceux du site distant 2 pour ensuite renvoyer les nouvelles
données sur le ftp.

En théorie, le site distant 1 et 2 devrait synchroniser leurs postes avec
les nouvelles données qui sont sur le ftp.

Le problème est que Windev fourni un exemple d'un poste maitre et un poste
abonné sur le meme ordinateur. De cette facon, tout va bien. Si je prends


le
même exemple pour ensuite envoyer mes réplications a distance pour ensuite
les synchroniser le poste maitre, j'ai toujours et toujours des erreurs
disant qu'il ne reconnait pas les RPL et qu'ils ne coordonnent jamais avec
le RPM. Donc, je dois surement pas faire la bonne séquence. Dans le fonds,
l'exemple de windev ne sert qu'a titre d'exemple sur simuler 2 postes...

Si vous avez un exemple complet d'un poste maitre et d'un poste abonné qui
se réplique et synchronise soit par ftp ou courriel mais pas en réseau
local.

S.v.p. répondre a ce message, nous laisser une piece jointe avec le projet
si vous avez un site web sinon, me l'envoyer par courriel a
et je vais l'intégrer sur mon site parce qu'il y


a
beaucoup beaucoup de gens qui ont le même problème que moi. Je commence a
couter chere en recherche et développement. :)

Merci