|
Quel type de réplication ? Comment la mettre en place ? |
Iniciado por nishouille, jun., 10 2005 11:10 AM - 2 respostas |
| |
| | | |
|
| |
Publicado em junho, 10 2005 - 11:10 AM |
Bonjour, j'aimerais mettre en place la réplication sur mon logiciel complètement en HF classique. Le commercial possède sur ton portable une application et une base (avec journal). Le serveur de l'entreprise possède également sa version du logiciel et sa base (avec journal). J'aimerai créer une procédure de réplication des données. Dois-je faire une réplication hétérogène ? Puis-je me contenter de ce qu'on appelle une "réplication classique" ? Si oui, en quoi consiste cette réplication classique ? S'il s'agit de la copie des fichiers FIC, NDX et MMO, je crois que cela me pose un soucis car il est important dans mon programme que le plus récent des enregistrements prédomine. Comment mettre en place cette réplication ?
Lorsque j'essai la réplication hétérogène, j'écris ceci :
HGèreRéplication(rplReplicationHétérogène) HChangeRep("*",emplacement_BD_réseau) HChangeRepJnl("*",emplacement_BD_réseau\JNL,emplacement_BD_réseau\JNL) HChangeRepRpl(emplacement_BD_réseau\RPL) HCréeRéplicaMaître(emplacement_BD_réseau)
HChangeRep("*",emplacement_BD_portable) HChangeRepJnl("*",emplacement_BD_portable\JNL,emplacement_BD_portable\JNL) HChangeRepRpl(emplacement_BD_portable\RPL) HCréeRéplicaAbonné(emplacement_BD_réseau,emplacement_BD_portable,1)
HSynchroniseRéplica(emplacement_BD_réseau\RPL,emplacement_BD_portable\RPL,rplVersMaître,rplPlusRécentPrioritaire)
Mais ce ci ne fonctionne tout simplement pas. Je n'ai donc pas compris comment faire la réplication par programmation
Bien cordialement. A bientot |
| |
| |
| | | |
|
| | |
| |
Publicado em junho, 11 2005 - 11:12 AM |
Bonjour,
Bonjour, j'aimerais mettre en place la réplication sur mon logiciel complètement en HF classique. Le commercial possède sur ton portable une application et une base (avec journal). Le serveur de l'entreprise possède également sa version du logiciel et sa base (avec journal). J'aimerai créer une procédure de réplication des données. Dois-je faire une réplication hétérogène ? Puis-je me contenter de ce qu'on appelle une "réplication classique" ?
La "réplication classique" est fondée sur la journalisation. Comme les fichiers actuels disposent déjà de la journalisation, cette réplication ne devrait pas poser de problème (Sauf qu'il faut modifier l'analyse pour activer celle-ci).
>S'il s'agit de la copie des fichiers FIC, NDX et MMO, je crois que cela me pose un soucis car il est important dans mon programme que le plus récent des enregistrements prédomine.
La réplication ne transfère que les changements dans les bases. Pour avoir les modifications les plus récentes, il faut mettre rplPlusRécentPrioritaire comme 4ième paramètre de HSynchroniseRéplica.
Comment mettre en place cette réplication ?
Pour la réplication journalée, de manière simplifiée, il faut (Cas où les données sont synchronisées lorsque l'abonné est connecté au réseau local) : - Déclarer les fichiers comme était répliqués dans l'analyse - Mettre un HGèreRéplication(Vrai) dans l'init du projet - Créé le réplica maître (typiquement à coté des données maître) via : HCréeRéplicaMaître(RepDonnéesMaître) - Créé le réplica abonné : HCrééRéplicaAbonné(RepDonnéesMaître, RepDonnéesAbonné, NomDeLabonné) - Deplacer le réplica abonné (Fichier .RPL) sur le poste abonné (Par exemple dans le repértoire de l'application avec les données locales) - Une première synchronisation (Initialisation de l'abonné) : HSynchroniseRéplica(RepDonnéesMaître, RepDonnéesAbonné, rplBidirectionnel) - Puis à chaque fois que requis, lorsque l'abonné est connecté au réseau local : HSynchroniseRéplica(RepDonnéesMaître, RepDonnéesAbonné, rplBidirectionnel, rplPlusRécentPrioritaire)
Lorsque j'essai la réplication hétérogène, j'écris ceci :
HGèreRéplication(rplReplicationHétérogène) HChangeRep("*",emplacement_BD_réseau) HChangeRepJnl("*",emplacement_BD_réseau\JNL,emplacement_BD_réseau\JNL) HChangeRepRpl(emplacement_BD_réseau\RPL)
HChangeRepJnl et HChangeRepRpl sont, a priori, inutile avec la réplication hétérogène (elle n'utilise pas la journalisation)
HCréeRéplicaMaître(emplacement_BD_réseau)
HChangeRep("*",emplacement_BD_portable)
Cet ordre est mal placé, il faut déclarer (créer) l'abonné sur le maître (Expliqué dans l'aide à la rubrique réplication hétérogène)
HChangeRepJnl("*",emplacement_BD_portable\JNL,emplacement_BD_portable\JNL) HChangeRepRpl(emplacement_BD_portable\RPL)
Pareil, ordres WLanguage inutiles dans le cadre d'une réplication hétérogène.
HCréeRéplicaAbonné(emplacement_BD_réseau,emplacement_BD_portable,1) HSynchroniseRéplica(emplacement_BD_réseau\RPL,emplacement_BD_portable\RPL,r plVersMaître,rplPlusRécentPrioritaire) Mais ce ci ne fonctionne tout simplement pas. Je n'ai donc pas compris comment faire la réplication par programmation
Cordialement, Guillaume |
| |
| |
| | | |
|
| | |
| |
Publicado em junho, 13 2005 - 11:16 AM |
Très sympa (et complet ^^), je vais essayer ça.
Cordialement ! |
| |
| |
| | | |
|
| | | | |
| | |
|