Appli DEO
Accueil Remonter Appli DEO Mdi - Sdi

 

Aide en ligne dBASE Plus

DEO


 

Dynamic External Objects                       Les Objets externes dynamiques

 

Creating a DEO Application                     Pour créer une application DEO

 

Propriété allowDEOExeOverride           La propriété allowDEOExeOverride

 

 

 

 

Dynamic External Objects (DEO)

Les Objets externes dynamiques

DEO (Objets dynamiques externes) est une technologie unique qui permet non pas seulement aux utilisateurs, mais aux applications, de partager des classes à travers un réseau (et bientôt, à travers le Web). Au lieu de relier vos formulaires, programmes, classes et rapports en un seul exécutable qui doit être installé manuellement sur chaque poste de travail, vous déployez un shell - un simple exécutable dBASE Plus qui appelle un formulaire initial, ou qui fournit un menu de départ à partir duquel vous pouvez accéder à tous vos formulaires et autres objets de dBASE Plus. Le shell exécutable peut être aussi un programme aussi simple que:


        do startup.prg


où "startup.prg" peut être un objet ".pro" différent dans chaque répertoire à partir duquel vous lancez l'application, où le programme construit un menu contextuel dynamique "à la volée" (on-the-fly).

Les objets dynamiques peuvent être visuels, ou ils peuvent être des classes contenant seulement "les règles", ou enregistrer et récupérer des données. Chacun de ces objets peut être partagé à travers le réseau par tous les utilisateurs, et toutes les applications qui les appellent.

Par exemple, vous avez un formulaire client qui peut être utilisé dans votre application de suivi des clients, mais peut également être utilisé par votre programme de gestion de contact aussi bien que votre module comptes clients. Supposons que vous souhaitiez modifier un peu les champs du formulaire ou d'ajouter une vérification de routine ou de calcul. Pas de problème, il suffit de compiler le nouveau formulaire et d'utiliser l'Explorateur Windows pour le faire glisser dans le dossier approprié sur votre serveur. Chaque utilisateur et application est mise à jour immédiatement.


Les bénéfices d'utiliser des Objets externes dynamiques (DEO)

Mettre à jour des objets nécessite un simple glisser-déposer. Pas d'inscription, pas de fichiers d'interface, pas de serveur d'application nécessaires. La mise à jour n'a jamais été aussi facile.
Bien que les objets soient sur votre serveur de réseau, ils fonctionnent sur le poste de travail, réduisant la charge sur le serveur de façon spectaculaire, et rendant efficace l'utilisation de toute la puissance de traitement locale constituant votre réseau.
Le même objet (non-visuel) peut être partagé par votre LAN et votre site Web. Les objets dynamiques externes sont très petits et se chargent à une vitesse incroyable. Ils dépassent rarement la taille de 140K et habituellement font moins de 100K.

Et, le plus remarquable de tous, c'est l'un des seuls modèles d'objets qui supporte pleinement l'héritage. Vous ne pouvez pas hériter d'un ActiveX / OCX objet. Vous pouvez hériter des objets Java dans CORBA, mais c'est tellement difficile, que c'est rarement tenté. Avec dBASE Plus, hériter d'objets externes, est un plaisir savoureux :


Changer la présentation de la superclasse d'un formulaire et chaque formulaire dans chaque application hérite de ces changements, la prochaine fois qu'il est appelé.
Renommer votre entreprise? Changement de votre logo? Faites glisser le nouveau fichier .cfo sur le serveur et la mise à jour est terminée.


Mise en œuvre des objets dynamiques

1. Compilez votre code source, comme vous le feriez normalement. DEO utilise le code compilé. Dans dBASE Plus, le code compilé peut être reconnu parce que son extension de fichier se termine par "o". .rep, compilé devient .reo .wfm devient .wfo, etc.
2. Construire (créer un exécutable), seulement pour le formulaire principale de lancement, ou utiliser un formulaire de lancement générique pré-construit.
3. Copiez vos objets sur le serveur

C'est fait !

Comme Source Aliasing, DEO s'est doté d'un mécanisme pour trouver les bibliothèques d'objets, ce qui rend beaucoup plus facile leur partage sur le réseau et les applications. Ce mécanisme est fondé sur une liste d'options de recherche créé à l'aide de simples lignes dans le fichier .ini de votre application..

dBASE Plus cherche les objets ainsi :

1.    Il regarde dans le répertoire  "maison" à partir duquel l'application a été lancée.
2.    Il regarde dans le fichier .ini si une série de chemins de recherches ont été indiqués. Il vérifie dans tous les chemins si le fichier objet requis par l'application est présent
3.    Il regarde dans le fichier .exe de l'application comment Visual dBASE faisait.

Supposons que vous avez une bibliothèque dans laquelle vous prévoyez de stocker vos objets partagés. Supposons aussi que l'application est appelée "MonProg.exe" et se lance à partir du dossier c:\project1.

Dans Myprog.ini, nous devons ajouter les ordres suivants :

        [ObjectPath]

        objPath0=f:\mainlib
        objPath1=h:\project1\images
        objPath2=f:\myWeb

Votre code ressemble à quelque chose comme ce qui suit

        set procedure to postingLib.cc additive

dBASE Plus regardera en premier dans c:\project1 (le répertoire "maison).

Si cela échoue, dBASE Plus regardera dans f:\mainlib. S'il trouve postingLib.co, il chargera cette version. Sinon il regardera dans chacun des chemins suivants jusqu'à ce qu'il trouve un exemplaire du fichier objet.

Si cela échoue encore, dBASE Plus regardera dans MonProg.exe.

Conseils

Vous aurez à expérimenter DEO pour découvrir la meilleure approche sur la façon dont vous écrivez et déployer des applications. Cependant, voici quelques subtilités intéressantes dont vous pourriez tirer avantage:

Mises à jour imprévues : supposons que vous avez déjà envoyé une application dBASE Plus comme un véritable exécutable. Maintenant, vous voulez apporter un changement à un module. Pas de problème, il suffit de copier le fichier objet dans le répertoire de l'application et il sera utilisé à la place de celui intégré à l'exécutable. Vous n'avez pas besoin de transférer l'application complète comme la plupart des autres produits de développement d'applications doivent le faire. Il suffit d'envoyer le nouvel objet.

Rapports: Vous pouvez déployer des rapports ou encore permettre à vos utilisateurs de créer des rapports (à l'aide de dQuery) et les ajouter à leurs applications par l'élaboration d'un menu de rapports qui vérifie le disque pour voir les fichiers avec une extension .reo. Laissez le menu se construire lui-même à partir de la liste des fichiers. Ici, nous avons de vrais objets dynamiques - l'application ne sait même pas qu'ils existent jusqu'à l'exécution. DEO prend en charge en temps réel les applications dynamiques.

Support technique : Vous voulez essayer du code ou déployer un correctif à un client ou à bureau distant ? Pas de problème, il suffit juste d'envoyer le fichier objet sur le serveur et la mise à jour est terminée.

Applications distantes : Si vous avez un support VPN (ou toute autre méthode de mapping d'une connexion Internet à une lettre de lecteur), vous pouvez exécuter les applications DEO de dBASE Plus à distance sur Internet. Une future version de dBASE Plus comprendra la résolution d'URL et des adresses IP pour vous permettre d'accéder directement aux objets à distance par TCP/IP, sans middleware de soutien.

Objets distribués : Les objets peuvent être dans un seul dossier sur votre serveur, dans différents dossiers de votre réseau, ou en double dans une dizaine de dossiers pour la sécurité. Si l'un de vos serveurs tombe, et qu'un objet est indisponible, dBASE Plus recherche dans le dossier suivant de la liste jusqu'à ce qu'il en trouve un qu'il puisse charger. Les objets peuvent être situés n'importe où ils peuvent être trouvés par le poste de travail.

 

 

Creating a DEO Application

Pour créer une application DEO:

1. Cochez la case marquée ", DEO application?", sur la page Project.
2. Cliquez sur "Yes" à la boîte de dialogue suivante (ici premier graphique de l'aide dBASE "Creating a DEO Application")

deo_1.gif (78167 octets)

Après la désignation d'un projet en tant qu'application DEO, vous devez attribuer les fichiers du Projet à des dossiers DEO.

Dossiers DEO

Si vous avez des dossiers que vous souhaitez utiliser pour votre déploiement DEO, vous pouvez les sélectionner en cliquant sur le bouton « outil ». Cela ouvrira la boîte de dialogue « Choose Directory », vous permettant de sélectionner un dossier.

Si vous souhaitez créer de nouveaux dossiers, tapez le chemin complet dans le champ de saisie et appuyez sur la touche ENTRER. L'explorateur de projet créera le dossier. Répétez cette opération pour chaque dossier que vous souhaitez créér en sélectionnant le numéro de la prochaine ligne dans la liste, et la désignation d'un chemin et d'un nom dans le champ de saisie. Pour supprimer un dossier dans la liste, vous devez d'abord supprimer tous les fichiers qui lui sont assignées. Une fois qu'il est vide, le sélectionner dans la liste et cliquez sur le bouton icône "Clear a Target Folder" ("Effacer un dossier cible") sur la droite.

Sélection du dossier DEO pour chaque fichier

Une fois que vous avez créé les dossiers DEO, nous avons besoin de désigner à l'Explorateur de projet la place des fichiers dans les différents dossiers (voir second graphique de l'aide dBASE "Creating a DEO Application").

deo_2.gif (78661 octets)

1. Dans l'arborescence (TreeView), sélectionnez le fichier que vous voulez affecter à un dossier particulier. L'Explorateur de projet bascule la vue dans l'onglet Détails de la page de détails du fichier (File Details).
2. Décochez la case "Include file within executable" ("Inclure le fichier dans exécutable")
3. Cochez la case "Copy File to Separate DEO Folder" ("copie le fichier dans un dossier DEO séparé")
4. Répétez ce processus pour chaque fichier qui peut être compilé.

L'Explorateur de projet ne vous permettra pas de régler l'emplacement DEO pour le fichier que vous avez désigné comme le principal programme de démarrage dans la section Build.("Main Startup Program") L'application nécessite que le fichier compilé soit intégré dans l'exécutable lui-même.

 

 

 


  Propriété  allowDEOExeOverride  (Autorise DEO à se substituer à l'Exe)

 

Détermine comment une application recherche les objets externes.


Propriété de

_app  (true par défaut)

Description

Objets dynamiques externes (DEO) est actif dans dBASE Plus par défaut, ce qui permet aux applications d'effectuer une recherche automatique des objets externes. Le réglage de la propriété allowDEOExeOverride à false (faux) empêche les procédures, construites dans une application .exe, d'être supplantées par des objets externes, par la recherche en premier au sein de l'application. Exe. Seules les procédures qui n'existent pas dans le .exe sont recherchées à l'extérieur de l'application .exe.

Lorsque allowDEOExeOverride est faux (false) :

dBASE Plus fait des recherches pour les objets comme suit:

1. Il regarde à l'intérieur du fichier .exe de l'application, la façon dont Visual dBASE faisait dans le passé.
2. Il regarde dans le "home" dossier à partir duquel l'application a été lancée.
3. Il regarde dans le fichier .ini pour voir s'il y a une série de chemins de recherche spécifiés. Il vérifie tous les chemins dans la liste de recherche de l'objet fichier demandé par l'application.

Lorsque allowDEOExeOverride est vrai ( true, la valeur par défaut) :

dBASE Plus fait des recherches pour les objets comme suit:

1. Il regarde dans le "home" dossier à partir duquel l'application a été lancée
2. Il regarde dans le fichier .ini pour voir si il y a une série de chemins de recherche spécifiés. Il vérifie tous les chemins dans la liste de recherche de l'objet fichier demandé par l'application.
3. Il regarde à l'intérieur du fichier .exe de l'application, de la façon dont Visual dBASE faisait dans le passé.

Le réglage par défaut pour la propriété allowDEOExeOverride est vrai.

 

 

Traduction des sujets de l'aide en ligne de dBASE - version 2.6.0