Date : 04-09-2010
Votre partenaire informatique
Société
Solutions
Nos prestations
Produits
Contact
Partenaires
 
EmiReplicat Version imprimable Suggérer par mail

EmiReplicat est un logiciel de replication permettant sans toucher a votre programme de pouvoir envoyer la base et ses modification dans une autre ase. le format de depart (ou base maitre) peut etre HF , HF/client serveur, QLite, MySQL, SQLServer, Oracle etc... et la base esclave peut egalement prendre un des formats cités precedement.le logiciel contient egalement pour chacune des bases (maître et esclave) un

explorateur permettant de manipuler les données les exporter les imprimer, les modifier.

fonctionnalités :

- Replication temps réel sans modifcation du programme propietaire.
- Explorateur de bases avec filtre de selection
- Impression des selections
- Export (SQL, excel, txt)
- tri sur toutes les colonnes possible
- visualisation de la structure
- Sauvegarde / restauration des bases maitre et esclave
- Possibilite de repliquer une base sur internet
- Taches palnnifiées entierement parametrable
- periodicité parametrable
- lancement mensuel, journalier a heure fixe
- frequence de replication (X fois par jour)
- journalisation des evenements de la replication
- Replication par type (insert, update, delete + insert, insert + controle
- Replication selective
- choix des fichiers a repliquer
- Groupement de fichiers pour type de replication
- Condition de selection pour chaque fichier
- replication structure (mise a jour analyse)
- creation de la table sur la base esclave si la table n'existe pas
- chonometrage des executions
- gestion des connexions / deconnexions (et probleme reseau)
- gestion des chaines longues (jusqu'a 5000 caracteres)
- gestion de type passerelle
- Definition des tables source et destination de nom different
- Association de colonnes
       ex colonne nom de la table four dans   
       la colonne Raison de la table FourAdresse)
- Type de replication identique en mode passerelle que replication
- Export depuis ou vers internet possible (par php4wd)
- Configuration de la passerelle dans fichier ini (modifiable)
- Lancer par tache plannifié comme la replication homogène
- type de base source et destination différentes
                ex mySQL  vers SQLServer ou SQLserver vers HF
- Journalisation des erreurs et actions
 


limites :

- pas de replication des colonnes type tableaux HypeFile  (n'existent pas en SQL)


A venir :

-  Replication des memos (> 10 !ko)



 

1 connexion

 

L'écran de connexion reste actif pendant 30 seconde ensuite la réplication (tache planifiée est lancée automatiquement si aucun utilisateur n’est saisi.  


 

 le nom d’utilisateur et le mot de passe permettront de configurer l’application, le menu principal et les options du menu seront dépendantes de l’utilisateur nous verrons plus loin comment créer des menus, des groupes et des utilisateurs 

Il existera donc un utilisateur avec un mot de passe permettant d’accéder aux menus administration.

 

2.    Menu principal

 

Le menu principal contient tous les boutons qui seront nécessaires a l’application. Le menu sur la gauche gère les principales fonctionnalités Chaque fenêtre permet des actions qui sont disponibles. Si une action n’est pas disponible dans la fenêtre l’appuie sur le bouton ne provoque aucune action. 

  

Actions possibles dans chaque fenêtre : 

  • Nouveau      (F2)       : ajouter un nouvel élément
  • Modifier        (F3)       : Modifier l’élément sélectionné (dans la table idem double clic)
  • Supprimer   (Suupr)  : Supprimer l’élément en cours
  • Imprimer       (F6)        : imprimer la liste
  • Excel                             : exporter la liste vers Excel
  • Valider          (F9)         : modifier (dans le cas d’une fiche valide les odifications)
  • Quitter           (ESC)     : sorite de la fenêtre active ou sorite de l’application
 

Ces actions et leurs raccourcis sont accessibles dans toutes les fenêtres, l’action sera envoyée à la fenêtre active (celle qui a le bandeau de titre en bleu)                           

3.    Configuration

 

3.1  paramètres

 

Les paramètres sont définit pour configurer le logiciel. Certains paramètres servent à remplir les listes de choix dans les écrans et d’autres pour faire certain calcul. 

   

-    insertion : clic sur le bouton « nouveau »
-         modification : double clic sur un élément ou « modifier »
-         suppression : choix d’un élément et « suppression »
-         imprimer : cliquer sur le bouton imprimer pour obtenir la liste 

On peut pour ces éléments effectuer une recherche par critère, il suffit de remplir les champs dans le cadre supérieur et la liste affichée sera automatiquement modifiée pour ne laisser apparaître que les éléments répondant aux critères de sélection. Le bouton effacer permet de remettre les éléments de critères a vide et afficher tous les éléments de la base.  

3.2  Fiche paramètres

 La modification d’un paramètre  ou la création permet d’arriver sur la fiche 

  

cette fiche vous permet de modifier les éléments les flèches de navigation en haut à gauche permet de se déplacer sur les fiches

Une fois les éléments modifiés ou crées en appuyant sur le bouton valider ou par le raccourci F9 la mise a jour sera envoyé et la fiche sauvegardée.

 

3.3   connexions

 les connexions sur les bases Maitre et esclave sont effectuées dans cet écran et sauvegardées sous forme de paramètres (donc visible depuis la configuration des paramètres) 

  

Pour chaque connexion vous avez le type de connexion et vous pouvez tester la connexion avec le bouton dans le cadre de la connexion.  

-         valider : valide les modifications : enregistre la fiche des 2 connexions en une seule fois 

Les paramètres typeDate et typeHeure sont des informations particulières liées a la transformation et l’envoi des structures dans la base esclave. Par exemple entre HF et mySQL le type heure peut être TIME mais sous HF une heure vide = une chaine vide alors que sous MySQL au format TIME une heure vide renvoie 00 : 00 :00  et donc on obtient pas les mêmes informations Pour obtenir les mêmes informations il faut sous MySQL mettre un CHAR(8) qui renverra une chaine vide si la colonne n’est pas remplie

 

3.4  Réplication

 C’est dans cet écran qu’on va définir les fichiers qui doivent être répliqué et comment ils vont l’être. C’est également ici qu’on peut  définir pour chaque fichier un filtre particulier 

  

-  valider : valide les modifications : enregistre la fiche de tous les fichiers 

Pour chaque fichier on peut déterminer :  

-         Le groupe : permet de grouper les fichiers pour la réplication
-         le type de réplication :

o       INSERT : les enregistrements sont tous envoyés en NSERT
o       UPDATE : les enregistrements sont mis à jour (nouveaux + mise à jour des anciens)
o       DELETE / INSERT : on insert les enregistrements après avoir tout supprimé
o       INSERT + CONTROLE : insertion des nouveaux enregistrements seuls
o       UPDATE + CONTROLE : mise à jour des enregistrements que s’ils ont été modifiés                

Certains types sont plus lents que d’autres car ils nécessitent plus de contrôle ou de demandes à la base de données. Le type est modifiable a volonté            

- Condition de sélection :  on peut entrer des sélections sur le fichier comme on le veut, il suffit de taper dans cette case la condition par exemple date>’20090101’

- Passerelle

- vous pouvez definir aussi un table differentes comme destination ainsi que les colonnes pour faire une passerelle entre 2 bases de données. pour cela selectionnez le fichier sources dans la table (liste des fichier a repliquer) ensuite selectionnez la table destination dans la liste fichier et table de desination

- les colonnes de la table a repliquer sont alors mises dans la table et vous pouvez effectuer une correspondance avec les colonnes de la table destination en double cliquant sur une ligne pour choisir dans la liste la colonne que vous voulez.

si vous ne souhaitez pas faire de correspondance avec la colonne de la table a repliquer : laisser blanc la colonne sera alors ignorée.

 pour faire des type de replication en update avec ce type (passerelle) vous devez mettre la cle primaire dans les correspondance sinon la mise a jour ne sera pas possible car le logiciel ne sera pas quelle colonne correspond a la cle dans la table destiantion

 pour le type insert ce n'est pas necesaire

le fichier passerelle.ini reprend tout cela en fichier texte (vous pouvez le modifier comme vous le voulez. les modification seront prise en compte

cette table ne sert a rien (ou du moins n'est pas utlisée si vous faites une replication a l'identique. mais cela peut se cumuler repliquer la table complemement et aussi la configurer comme passerelle (la methode de lancement TransfertDonnées n'utilise pas le fichier ini et attend une table de structure identique en destination)

 

3.5 Journal

Les actions de réplications sont journalisée pour un suivi plus précis.Les éléments de filtration peuvent vous permettre d’isoler facilement une partie de la journalisation.  Le détail est mis sur la droites en cliquant sur une ligne du journal.

  

-         voir  : : choix d’un élément  et « Voir »
-         suppression : choix d’un élément et « suppression »
-         imprimer : cliquer sur le bouton imprimer pour obtenir la liste 

on peut supprimer les éléments du journal mais cela est déconseillé pour pouvoir refaire la chronologie des éléments de réplication
 

4.    Explorateurs

 Pour chaque base (la base maître et la base esclave) vous pouvez avoir un explorateur vous permettant d’interroger la base de données d’imprimer, de filtrer les données 

  

Clic droit sur la table vous donne un menu contextuel permettant de faire certaines action comme le tri l’export, modification, suppression de la ligne en cours etc.… Vous pouvez limiter le nombre d’enregistrement visible en remplissant les éléments limites. Vous pouvez entrer un filtre en base de la table « filtre » pour ne voir que certains enregistrements Les boutons au-dessus de la table permettent certaines actions : 

-         insertion :  aller à la fin de la table et ajouter l’enregistrement en replissant les colonnes
-         suppression :  de l’élément affiché :  « suppression »
-         imprimer : cliquer sur le bouton : envoi la fenêtre à l’édition
-         valider : valide les modifications : enregistre la fiche

L’onglet structure vous permet de voir la structure du fichier ou de la table. 

5.    Taches planifiées 

 Les taches planifiées permettent de lancer la réplication de façon autonome et répétitive. Cet écran vous montre la listes des taches planifiées présentent dans la base de données du programme. 

  

pour tester une tache planifiée il suffit de la sélectionner et de faire « exécuter »  la tache sera lancée une seule fois

 -         insertion : clic sur le bouton « nouveau »
-         modification : double clic sur un élément ou « modifier »
-         suppression : choix d’un élément et « suppression »
-         imprimer : cliquer sur le bouton imprimer pour obtenir la liste
-         imprimer : cliquer sur le bouton  « imp écran » : envoi la fenêtre à l’édition 

Les éléments de temporisation ne sont actifs que dans la partie lancement (taches planifiées en cours d’exécution : nous verrons cela plus loin)

 

6.    Fiche tache planifiée

Pour définir une tache planifiée il faut lui donner un numéro unique 

   

Les boutons de parcours permettent un accès rapide en modification des fiches. Ils permettent de se déplacer au premier, suivant, précèdent, dernier élément.

 -         insertion : clic sur le bouton « nouveau »
-         suppression :  de l’élément affiché :  « suppression »
-         imprimer : cliquer sur le bouton  « imp ecran » 
-         valider : valide les modifications : enregistre la fiche 

périodicité  de  tache :

-         horaire :  exécution  (x fois par heure) fréquence donne le nombre de fois
-         mensuel : 1 fois par mois (des que le mois change la procédure est lancée
-         quotidien : 1 fois par jour (si la tache tourne tout le temps (l’exécution se fait a 0h00)
-         permanent :  tout le temps la tache tourne et la procédure est exécutée
-         un jour précis : si le jour en question est le bon la tache est exécutée 1 fois
-         tous les jours sauf dimanche
-         tous les jours sauf weekend: lundi, mardi, mercredi, jeudi, vendredi
-         sauf les jour férié : ne s’exécute pas si le jour est férié nous allons détailler les fonctions qui peuvent être insérée dans les taches planifiées.

La fonction à lancer est directement lié au logiciel et doit être précise. 

-
        
LanceReplicationStructure :  

o       Permet de lancer la récupération de la structure
o       Le paramètre est le groupe de fichier
o       Si le fichier n’existe pas dans la base esclave il est cree
o       Si le fichier existe déjà rien n’est faito       Exemple : LanceReplicationStructure ,1 pour mettre à jour les fichiers groupe 1  

-         LanceMiseAJourAnalyse :  

o       Permet de lancer la mise a jour des tables par rapport a l’analyse. Pour chaque table du groupe on aura

§         Export des données de la base esclave
§         Suppression de la table
§         Création de la table avec la structure de la base maître
§         Importation des données de la base esclave

o       Ne fonctionne pas si une colonne est supprimée dans l’analyse.
o       Exemple : LanceMiseAJourAnalyse ,1 pour mettre à jour les fichiers groupe 1  

-         LanceReplicationDonnees 

o       Création de la table si elle n’existe pas
o       Envoie des données de la base maître vers la base esclave
o       Le paramètre est le groupe de fichier
o   Suit le type de replication du groupe

o       Exemple : LanceReplicationDonnées,1 pour mettre à jour les fichiers groupe 1 

-         LancePasserelleDonnees

 permet de lancer la passerelle si une a ete defini (si aucun element n'a ete saisie aura la meme action que la replication des données citées ci dessus. par contre on peut très bien avoir un fichier entierement defini en passerelle et l'envoyer dans la replication des données (jouez avec les groupes pour cela)

 

7.     Lancement

 La fenêtre de lancement se lance automatiquement si aucun mot de passe n’est saisi au départ (après 30 secondes le lancement se produit) pour éviter que l’application ne reste indéfiniment inactive  

Avant que les taches planifiées ne se lancent vous pouvez déterminer la temporisation en modifiant la valeur dans la case. Chaque tache planifiée attendra cette temporisation avant de ce lancer 

la colonne exécution récupère le temps d’exécution de la tache lors de son dernier lancement  ce temps est affiché en  minute, seconde, centième de seconde 

Si une tache n’est pas active (coche actif) alors elle est présente mais pas exécutée dans la temporisation et sera ignorée. 

Si une tache se passe mal elle apparaitra en rouge a l’écran pour spécifier qu’il y a eu un problème (qui a été journalisé) mais parfois une tache peut ne pas fonctionner et au passage suivant fonctionner correctement (par exemple si un coupure avec le serveur se produit la tache le signalera mais une fois le serveur relancer la replication continuera). 

La périodicité est aussi respectée suivant ce que vous avez mis : permanent est la seule périodicité qui s’exécute contament. Les autres sont une fois par jour / par mois, par ans certain jour etc. … 

8.    Sauvegarde de la base :

Chaque base (maître et esclave) peut être sauvegardée de façon indépendante. Dans le menu choisissez la fonctionnalité sur la base désirée.   

Pour effectuer une sauvegarde de la base il suffit de faire dans le menu par exemple : base maitre – sauvegarde.

Cette fenêtre permet de choisir les informations qu’on veut sauvegarder (nom des tables à cocher) La sauvegarde peut se faire suivant 3 axes 

-         La structure de la base : permettant de recréer les tables vides dans la base
-         Les données : seules les informations dans les tables seront exportées
-         L’ensemble structure + données 

9.    Restauration de la base :

 La restauration peut egalement être indépendante. Dans le menu choisissez la fonctionnalité sur la base désirée. 



ATTENTION : le script executé ne sera pas analysé pour savoir s’il correspond à la base ou non. Pour transférer une base d’une type (ex mySQL) vers un autre type (exemple SQLite) il faut passer par les fonctionnalité de réplication.   

Pour restaurer une base i suffit de choisir le fichier de script SQL qui a été généré par la procédure précédente et de faire valider. 

Nota : les documents de la documentation technique sont cryptés et donc se trouve en place et lieu avec les fichiers scripts sinon ils ne seront pas insérés et la documentation technique peut être vide

10.     Gestion des utilisateurs et de leur droits

   -         création de groupe utilisateur

o       dans la partie groupe choisir une ligne vide et taper le nom du group
o       une fois fait une fenêtre de validation permet d’enregistrer le groupe

 -         modification d’un groupe

o       se positionner sur le groupe
o       modifié le nom
o       une fenêtre de validation apparaît pour la validation 

-         Création / modification d’un utilisateur

o       Choisir une ligne vide dans la liste des utilisateurs ou un utilisateur
o       Entrer les informations nom, prénom, mot de passe
o       Une fenêtre de validation apparaît pour sauvegarder les informations 

-         Les droits utilisateurs sont représentés par les coches et les noms de fenêtre de l’application on pourra ainsi faire disparaître certains boutons ou griser des actions dans les fenêtres qui seront affichées à l’utilisateur

11.     Configuration du menu

Cette fenêtre permet de générer les menus pour les utilisateurs. L’œil a cote d’un menu veut dire que le menu est actif pour le groupe utilisateur et sera actif. Pour activer ou désactiver un menu il suffit de se positionné dessus et de cocher la case adéquate : menu non disponible ou menu disponible 

attention si vous désactiver un menu il faut s’assurer que les menu dessous celui ci soient aussi désactivés sinon l’affichage peut ne pas fonctionner correctement attention le code dans les options de menu est du code de programmation, si vous ne connaissez pas le langage de programmation éviter de toucher a cette partie, le fonctionnement du logiciel complet peut en être perturbé et ne plus fonctionner correctement 

Tarifs :

      -  Version monoPoste : 500 € 
      -  Version Sources : 7500 € (sources complet de l'application)