Transaction MultiPLeXeur (TMPLX)

Manuel de l'utilisateur

Révision 1.0

Utilisation des produits
________________________

Ce produit a été testé selon des normes de contrôle de qualité.  ROBERT LAFLAMME n'est pas responsable d'une mauvaise utilisation du produit.  L'utilisateur doit respecter les règles définies dans ce manuel.  Si certains problèmes techniques sont rencontrés, l'utilisateur peut contacter le soutien technique de ROBERT LAFLAMME par eMail à l'adresse suivante: rlafla@excite.com.

Introduction
____________

Le produit TMPLX se compose de deux applications développées en Visual Basic (STMPLX, MTMPLX) et un OCX (CTLTMPLX) pouvant facilement être intégré dans des outils de développement comme Visual C++, Delphi ou Visual Basic.  L'OCX de TMPLX interpelle l'application STMPLX (Serveur TMPLX).  L'application MTMPLX gère la base de données d'exploitation de TMPLX.

Principe de fonctionnement
__________________________

Le serveur et le gestionnaire TMPLX (STMPLX et MTMPLX) sont le noyau autour duquel graviterons les applications clients développées par l'utilisateur.  Les applications clientes de TMPLX sont conçues en intégrant l'OCX CTLTMPLX dans leur code.  Grâce à l'OCX de TMPLX, celles-ci peuvent se connecter au serveur STMPLX, transmettre et recevoir des transactions du serveur TMPLX.  La tâche du serveur STMPLX est d'analyser une  transactions reçue d'un client et l'expédier aux clients auxquels elle est destinée.  Les clients destinataires sont sélectionnés en fonction des paramètres contenus dans la base de données d'exploitation de TMPLX.

Installation de TMPLX
_____________________

Logiciel requis :



L'ordinateur sur lequel vous installez TMPLX doit avoir le " RUN TIME " de Visual Basic 5.0 installé au préalable

Installation du logiciel TMPLX.

0. " Unzip " le fichier compressé dans un répertoire de travail.  Vous obtiendrez des sous-répertoires des éléments constituant TMPLX.


TMPLX s'installe en trois phases bien distinctes.

1. L'installation du serveur STMPLX

Sur l'ordinateur cible, exécuter le programme StmplxSetup.exe (sous-répertoire Stmplx\Disque1) et suivre les instructions de l'interface d'installation. 

2. L'installation du gestionnaire MTMPLX

Sur le même ordinateur que l'ordinateur où est installé STMPLX, exécuter le programme MtmplxSetup.exe (sous-répertoire Mtmplx\Disque1) et suivre les instructions de l'interface d'installation. 

3. L'installation de l'OCX CTLTMPLX dans l'environnement de développement.

Sur l'ordinateur de développement désiré, exécuter le programme CtltmplxSetup.exe (sous-répertoire Ctltmplx\Disque1) et suivre les instructions de l'interface d'installation.

Paramétrisation de la base de données d'exploitation
____________________________________________________

La base de données de TMPLX est gérée par l'application MTMPLX.  Pour échanger des données entre des clients de TMPLX, l'utilisateur doit définir les clients, les unités d'un client aptes à recevoir des transactions et les enregistrements qu'un client peut recevoir.

L'interface usager MTMPLX permet de réaliser les activités de gestion de la base de données.  La section "Exemple d'utilisation de MTMPLX" démontre la façon de créer un environnement d'exploitation de TMPLX.


Utilisation de CTLTMPLX
_______________________


Se connecter et se déconnecter
______________________________

Pour fonctionner, une application développée à l'aide de CTLTMPLX doit communiquer avec le serveur STMPLX.  Pour établir cette communication, il faut avant tout que l'adresse IP et le port de connexion au serveur STMPLX soient bien initialisées.  Ces valeurs sont contenues dans des entrées de registre de WINDOWS pour l'OCX de TMPLX (nous verrons plus loin les entrées de registre WINDOWS de l'OCX et les valeurs de défaut).  Les entrées de registres sont définies à la première exécution de l'OCX CTLTMPLX.  Le programmeur de l'application intégrant l'OCX peut aller modifier ces entrées de registre par les appels de fonction standard de Visual Basic pour les entrées de registre (fonctions GetSettings, SaveSettings, etc...) ou par le programme " Regedit " de Windows.

Par la suite, les propriétés ClientIdent et ClientPassword doivent être initialisées par des valeurs conformes au contenu de la base de données opérationnelle TMPLX (un enregistrement de client valide et son mot de passe associé).  Ensuite, le développeur doit appeler la méthode ConnectToServer.  L'OCX retourne un évènement ConnectionEnd avec la propriété Error_Code initialisée en fonction de l'état de la connexion.

L'OCX après une connexion valide retourne dans les collections UnitsIdRef, RecordsIdRef, RecordsPositionRef et RecordsValueRef tous les liens aux unités et aux enregistrements du client connecté.  Ainsi l'application qui intègre l'OCX TMPLX offre au programmeur un moyen de valider les transactions en fonction des unités et des enregistrements définis.  C'est de la responsabilité du programmeur de l'application client de réaliser cette validation et de prendre les actions requises.


Connaître les unités du client connecté
_______________________________________

La collection UnitIdRef est rendue disponible au développeur par l'OCX de TMPLX.  Cette collection permet de savoir qu'elles sont les unités de la base de données TMPLX qui sont liées au client connecté par la méthode ConnectToServer.  Le programmeur obtient l'identifiant des unités par la propriété Item de la collection.

*** Attention ***    la modification de cette collection par le programme n'a aucun impact sur le fonctionnement de l'OCX.


Connaître les enregistrements du client connecté
________________________________________________

Les collections RecordsIdRef, RecordsPositionValue et RecordsValueref sont rendues disponibles au développeur par l'OCX de TMPLX.  Ces collections permettent au programmeur de connaître qu'elles sont les enregistrements et leurs définitions qui sont liées au client connecté par la méthode ConnectToServer.  Le programmeur obtient les informations relatives à un enregistrement lié par la propriété Item des collections.

*** Attention ***    la modification de cette collection par le programme n'a aucun impact sur le fonctionnement de l'OCX.


L'envoie d'une transaction au serveur STMPLX
____________________________________________

Le développeur est responsable de formater les transactions qu'il désire transmettre au serveur pour aiguillage aux autres clients connectés au serveur STMPLX.

La méthode Send_To_Server permet de transmettre au serveur une transaction formatée par l'application client émettrice.  Cette méthode requiert l'initialisation des valeurs suivantes:


More_Transaction_For_This_Send
------------------------------

Variable de type booléenne, elle peut prendre la valeur "True" ou "False".  

C'est un indicateur qui permet le déclenchement du processus de transmission vers le serveur.  Si la valeur est "False", la transmission est initiée immédiatement.

Si la valeur est "True", l'OCX accumule les transactions dans son processus interne et les transmettra en séquence lorsque l'application lui spécifiera d'initier le processus de transmission.

Cet indicateur a été élaboré pour faciliter la gestion des transactions multiples par le développeur.  Celui-ci n'a pas à se préoccuper des délais entre chaque transaction.  C'est l'OCX qui en est responsable.

Par exemple, à toutes les dix (10) minutes, une unité transmet 20 transactions.  Le programme client reçoit les 20 transactions de l'unité et les formate selon ses besoins avant de les transmettre au serveur via une boucle en utilisant l'indicateur More_Transaction_To_Send à "True" pour les 19 premières transactions et à "False pour la transaction numéro 20.


Ident_Of_Destination
--------------------

C'est l'identifiant de l'unité à qui la transaction doit parvenir.


Data_To_Send
--------------------

C'est la transaction qui doit être acheminée à l'unité spécifiée par Ident_Of_Destination.


L'évènement ConnectionEnd
_________________________


C'est l'évènement qui est déclenché par l'OCX pour indiquer à l'application client le statut de la connexion au serveur STMPLX.  Le fichier d'extension "lng" du répertoire hébergeant l'OCX de TMPLX (CTLTMPLX.ocx) donne la signification des codes de retour.  Ce sont les valeurs que peuvent prendre les propriétes Error_Code et Error_Message de l'OCX TMPLX.


L'évènement NewDataFromServer
_____________________________


C'est l'évènement qui indique que le client a reçu une transaction du serveur STMPLX.  Cet évènement retourne l'identifiant de l'unité émettrice de la transaction et la transaction elle-même.  Les variables Id_Unit et Data_Unit contiennent respectivement l'identifiant et la transaction.

Le développeur est responsable de programmer les traitements pertinents des données reçues.


La création d'entrées de registre pour les applications clients
_______________________________________________________________


Pour l'OCX de TMPLX, les entrées de registre se créent sous le nom d'application TMPLXocx par défaut.

Il est possible que ces entrées de registre soient crées sous un autre nom d'application.  Le programmeur doit alors inclure dans le répertoire de l'application un fichier appelé IdAppl.txt contenant une seule ligne sur laquelle est inscrit le nom d'application désiré.

Cette fonction supplémentaire permet d'avoir pour chacune des applications clients hébergées par le même ordinateur des entrées de registre différentes pour chacune des applications.  Ceci offre la possibilité de modifier les paramètres de fonctionnement d'une des applications sans modifier ceux de l'autre.

Exemple d'utilisation de MTMPLX
_______________________________

À l'initialisation de MTMPLX, l'utilisateur reçoit un panorama demandant de donner le code d'autorisation pour utiliser l'application MTMPLX.  Par défaut, ce code d'autorisation est " tmplxLogON ".

Après la soumission du bon code d'autorisation, le panorama de gestion de MTMPLX est affiché.

Posons comme hypothèse que nous désirons que le client No1 puisse recevoir des données de l'unité ZC6 et que les transactions recevables soient les enregistrements Un et Deux lesquels sont des enregistrements avec le code GO1 en position quatre de l'enregistrement et le code GO2 en position 7 de l'enregistrement.  

Alors avec l'application MTMPLX, on ajoute un client.  Ceci ouvre une fenêtre dans le panorama.  Inscrire la valeur No1 dans la zone " Clients ", la description du client dans la zone " Description ", le mot de passe pour ce client dans la zone " Mot de passe " et le mot de passe de vérification pour ce client dans la zone " Vérification du mot de passe ".  Ensuite, appuyer sur le bouton " Traitement ".  Vous venez d'inscrire le client No1 dans la base de données d'exploitation de TMPLX.

Faire le même type de traitement pour ajouter une unité.  Toutefois, il n'y aura que la zone Unités et Description à compléter.

Faire deux fois le même type de traitement pour ajouter les enregistrements à définir. Spécifier pour l'enregistrement " Un ", la valeur 71;79;49 et la position 4 et pour l'enregistrement " Deux ", la valeur sera 71;79;50 et la position 7.

Note : si vous désirez qu'un client reçoive tous les enregistrements des unités qui lui sont liées, vous devez lier ce client à un enregistrement sans code d'enregistrement.  Dans ce cas, vous devriez avoir dans la base de données opérationnelle de TMPLX un enregistrement par exemple, appelé " SansCode " avec une position à zéro (0).  Un client qui sera lié à cet enregistrement recevra tous les enregistrements des unités qui lui sont liées.

Un dernière étape permet de lier les unités et les enregistrements à un client.  Ouvrir le menu déroulant pour la zone " Clients ".

Vous obtenez la liste des clients déjà inscrits à la base de données opérationnelle de TMPLX.  Sélectionner le client No1.  Vous obtenez la fenêtre de modification ou de suppression de client.  Celle-ci offre deux boutons de liaison, celui pour les unités et celui pour les enregistrements.  Cliquer sur le bouton " Liaison unités " et vous obtenez une autre fenêtre à droite.  Dans la partie non-lié de la nouvelle fenêtre, sélectionner ZC6 et cliquer sur la flèche vers la droite.  Vous venez de lier l'unité ZC6 au client No1.

Le même processus doit être suivi pour les enregistrements à lier au client.

***   Attention   ***   il est recommandé de prendre régulièrement des copies de sécurité de la base de données TMPLX.mdb.
