replication
Le
bruno.mutel
Bonjour
Je ne suis pas programmeur c'est pourquoi je fais pas mal d'erreur.
Cela fait un moment que j'essai de réplicer un poste maitre vers un
abonné (mono directionnel pour le moment).
Voici ma procédure simplifiée:
Sur le maitre:
creation replica maitre, abonné.
copie des fichiers de données (fic, ndx,mno)+rpl+rpm sur
disquette.
Sur l'abonné:
copie des fichiers de données (fic, ndx,mno)+rpl+rpm venant du
maitre
initialisation du poste abonné
jusque là sa marche
Poste maitre:
Création du support transportable avec
HCréeRéplicaTransportable sur disquette.
Poste abonné:
Mise à jour de la base avec HSynchroniseRéplica
Et la sa plante "impossible de trouver le RPM)etc
J'ai essayé plein de choses a force je ne sais plus ou j'en suis.
Si dessous le code complet bouton par bouton.
Si vous pouvez m'aider se serai vraiment sympa.
//APPLICATION MAITRE
Bouton création maitre
SI PAS HCréeRéplicaMaître(fRepEnCours()+"\Maitre") ALORS
Info(ErreurInfo())
Bouton abonné
test est une chaîne=HCréeRéplicaAbonné(fRepEnCours()+"\Maitre",fRepEnCours()+"\abonné","Nom
Abonné",1000)
SI test=0 ALORS
Info(ErreurInfo())
FIN
Bouton export des Données(Permet de copier les fichiers pour un abonné
par support transportable)
epAcceuil est une chaîne
RepAcceuil=fRepSélecteur("C:\*","Sélectionnez un répertoire
d'acceuil","Selectionner un répertoire où sera enregistré les fichiers
nécessaires")
Sablier(Vrai)
SI PAS fCopieFichier(fRepEnCours()+"\abonné\*Nom
Abonné.RPL",RepAcceuil+"\abonné\")ALORS
Info(ErreurInfo())
FIN
SI PAS fCopieFichier(fRepEnCours()+"\maitre\*.RPM",RepAcceuil+"\maitre\")ALORS
Info(ErreurInfo())
FIN
SI PAS fCopieFichier(fRepEnCours()+"\*.fic",RepAcceuil) ALORS
Info(ErreurInfo())
SI PAS fCopieFichier(fRepEnCours()+"\*.mmo",RepAcceuil) ALORS
Info(ErreurInfo())
SI PAS fCopieFichier(fRepEnCours()+"\*.ndx",RepAcceuil) ALORS
Info(ErreurInfo())
Sablier(Faux)
Bouton mise à jour abonné(création du support transportable)
repAcceuil est une chaîne
Sablier()
RepAcceuil=fRepSélecteur("C:\*", "Sélectionnez un répertoire
d'acceuil", "Selectionner un répertoire ou sera enregistré les
fichiers nécessaires")
SI PAS HCréeRéplicaTransportable(fRepEnCours()+"\maitre\","Nom
Abonné",RepAcceuil+"\maitre\Zip.WDZ") ALORS Info(ErreurInfo())
Sablier(Faux)
//APPLICATION ABONNE
Bouton importation des données(Importe les fichiers sur le poste
abonné, sur ce dernier pas de Hcréationsiinexsitant)
// Déclaration des variables
FichierACopier est une chaîne
FichierCopié est une chaîne
ResCopie est un booléen
// Sélection du répertoire ou sont stocké les fichiers
RepMaj = fRepSélecteur("C:\","Répertoire source","Sélectionner le
répertoire source des données")
SI RepMaj="" ALORS RETOUR
FichierCopié=RepEnCour
Sablier(Vrai)
// Copie des fichiers
ResCopie = fCopieFichier(RepMaj+"*.Fic", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
ResCopie = fCopieFichier(RepMaj+"*.ndx", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
ResCopie = fCopieFichier(RepMaj+"*.mmo", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
ResCopie = fCopieFichier(RepMaj+"*.mmo", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
SI PAS fCopieFichier(RepMaj+"RPL\*.rpl",FichierCopié+"\RPL")
ALORS
Info(ErreurInfo())
FIN
FIN
Info("Les fichiers ont bien été copié")
FIN
FIN
FIN
Sablier(Faux)
Bouton initialisation
SI PAS HInitAbonné("*",RepEnCour+"\RPL\Replica_abonné.RPL") ALORS
Info(ErreurInfo())
SINON
TitreSuivant("Compte rendu")
Info("Initiatilation réussie")
FIN
Bouton mise à jour abonné
FichierMiseAJour est une chaîne
FichierMiseAJour=fSélecteur("C:\*","", "Sélectionnez un fichier",
"Mise à jour"+TAB+"*.wdz", "wdz", fselOuvre+fselExiste)
SI FichierMiseAJour=""ALORS RETOUR
Sablier(Vrai)
SI PAS HSynchroniseRéplica(FichierMiseAJour,"",rplVersAbonné) ALORS
Sablier(Faux)
Info(ErreurInfo())
RETOUR
SINON
//fsupprime(FichierMiseAJour)
Sablier(Faux)
TitreSuivant("Compte rendu")
Info("Mise à jour des fichiers executée avec succès")
FIN
Je ne suis pas programmeur c'est pourquoi je fais pas mal d'erreur.
Cela fait un moment que j'essai de réplicer un poste maitre vers un
abonné (mono directionnel pour le moment).
Voici ma procédure simplifiée:
Sur le maitre:
creation replica maitre, abonné.
copie des fichiers de données (fic, ndx,mno)+rpl+rpm sur
disquette.
Sur l'abonné:
copie des fichiers de données (fic, ndx,mno)+rpl+rpm venant du
maitre
initialisation du poste abonné
jusque là sa marche
Poste maitre:
Création du support transportable avec
HCréeRéplicaTransportable sur disquette.
Poste abonné:
Mise à jour de la base avec HSynchroniseRéplica
Et la sa plante "impossible de trouver le RPM)etc
J'ai essayé plein de choses a force je ne sais plus ou j'en suis.
Si dessous le code complet bouton par bouton.
Si vous pouvez m'aider se serai vraiment sympa.
//APPLICATION MAITRE
Bouton création maitre
SI PAS HCréeRéplicaMaître(fRepEnCours()+"\Maitre") ALORS
Info(ErreurInfo())
Bouton abonné
test est une chaîne=HCréeRéplicaAbonné(fRepEnCours()+"\Maitre",fRepEnCours()+"\abonné","Nom
Abonné",1000)
SI test=0 ALORS
Info(ErreurInfo())
FIN
Bouton export des Données(Permet de copier les fichiers pour un abonné
par support transportable)
epAcceuil est une chaîne
RepAcceuil=fRepSélecteur("C:\*","Sélectionnez un répertoire
d'acceuil","Selectionner un répertoire où sera enregistré les fichiers
nécessaires")
Sablier(Vrai)
SI PAS fCopieFichier(fRepEnCours()+"\abonné\*Nom
Abonné.RPL",RepAcceuil+"\abonné\")ALORS
Info(ErreurInfo())
FIN
SI PAS fCopieFichier(fRepEnCours()+"\maitre\*.RPM",RepAcceuil+"\maitre\")ALORS
Info(ErreurInfo())
FIN
SI PAS fCopieFichier(fRepEnCours()+"\*.fic",RepAcceuil) ALORS
Info(ErreurInfo())
SI PAS fCopieFichier(fRepEnCours()+"\*.mmo",RepAcceuil) ALORS
Info(ErreurInfo())
SI PAS fCopieFichier(fRepEnCours()+"\*.ndx",RepAcceuil) ALORS
Info(ErreurInfo())
Sablier(Faux)
Bouton mise à jour abonné(création du support transportable)
repAcceuil est une chaîne
Sablier()
RepAcceuil=fRepSélecteur("C:\*", "Sélectionnez un répertoire
d'acceuil", "Selectionner un répertoire ou sera enregistré les
fichiers nécessaires")
SI PAS HCréeRéplicaTransportable(fRepEnCours()+"\maitre\","Nom
Abonné",RepAcceuil+"\maitre\Zip.WDZ") ALORS Info(ErreurInfo())
Sablier(Faux)
//APPLICATION ABONNE
Bouton importation des données(Importe les fichiers sur le poste
abonné, sur ce dernier pas de Hcréationsiinexsitant)
// Déclaration des variables
FichierACopier est une chaîne
FichierCopié est une chaîne
ResCopie est un booléen
// Sélection du répertoire ou sont stocké les fichiers
RepMaj = fRepSélecteur("C:\","Répertoire source","Sélectionner le
répertoire source des données")
SI RepMaj="" ALORS RETOUR
FichierCopié=RepEnCour
Sablier(Vrai)
// Copie des fichiers
ResCopie = fCopieFichier(RepMaj+"*.Fic", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
ResCopie = fCopieFichier(RepMaj+"*.ndx", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
ResCopie = fCopieFichier(RepMaj+"*.mmo", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
ResCopie = fCopieFichier(RepMaj+"*.mmo", FichierCopié)
// Affichage du message d'erreur si la copie n'a pas été effectuée
SI ResCopie = Faux ALORS
Erreur(ErreurInfo(errMessage))
SINON
SI PAS fCopieFichier(RepMaj+"RPL\*.rpl",FichierCopié+"\RPL")
ALORS
Info(ErreurInfo())
FIN
FIN
Info("Les fichiers ont bien été copié")
FIN
FIN
FIN
Sablier(Faux)
Bouton initialisation
SI PAS HInitAbonné("*",RepEnCour+"\RPL\Replica_abonné.RPL") ALORS
Info(ErreurInfo())
SINON
TitreSuivant("Compte rendu")
Info("Initiatilation réussie")
FIN
Bouton mise à jour abonné
FichierMiseAJour est une chaîne
FichierMiseAJour=fSélecteur("C:\*","", "Sélectionnez un fichier",
"Mise à jour"+TAB+"*.wdz", "wdz", fselOuvre+fselExiste)
SI FichierMiseAJour=""ALORS RETOUR
Sablier(Vrai)
SI PAS HSynchroniseRéplica(FichierMiseAJour,"",rplVersAbonné) ALORS
Sablier(Faux)
Info(ErreurInfo())
RETOUR
SINON
//fsupprime(FichierMiseAJour)
Sablier(Faux)
TitreSuivant("Compte rendu")
Info("Mise à jour des fichiers executée avec succès")
FIN

Poser une question


Regardes du coté de la lst 56, si tu l'as, tu y trouveras un exemple
didacticiel sympa.
A+
Antoine
chaîne=HCréeRéplicaAbonné(fRepEnCours()+"Maitre",fRepEnCours()+"abonné","N
om
Je savais que la LST 56 traitait du problème mais je ne suis pas
abonné.
Quand à Pc soft aucune réponse cohérente (Manque analyse, le coup
d'après une fenètre et après silence sur la ligne...),il m'ont envoyé
un exemple qui ma servi, celui que j'ai fait marche très bien comme
l'exemple sur le meme poste mais dés que je l'intal sur un autre ou là
poste maitre/abonné:plantage
il recherche le rpm dans le répertoir du maitre....
Donc je suis encore coincé, alors que je suis sur que je tourne autour
de la solution.
"Antoine"