De la 7.0 a DBPlus
Accueil Remonter De la 5.x a la 7.0 De la 7.0 a DBPlus De la 2.0 a 2.61.5 la 2.62 La  2.70 anciennes

 

 

Changements de Visual dBASE 7.0 à dBase Plus

• dBASE Plus supporte stdin et stdout dans la classe intégrée File (fichier), ce qui permet aux serveurs Web de communiquer directement avec des applications dBASE Web sans le « middleware » nécessaire dans les versions antérieures. Cette connexion directe améliore considérablement les performances Web de dBase.
• La classe de dBASE Plus Report Class supporte stdout comme une option de sortie d'origine, permettant aux rapports d’être exécutés directement sur les serveurs Web. Les rapports peuvent être appelé et exécuté directement à partir d'une URL tapée dans le navigateur Web.
• La dBASE Plus Web Class, écrite en dBASE, permet de développer très rapidement des applications de commerce électronique orientées objet.
• Les assistants dBASE Plus Web ont été mis à jour pour utiliser les nouvelles classes Web de dBASE Plus et supportent les instructions stdin et stdout.
• dBASE Plus est livré avec un driver ODBC redistribuable gratuitement pour Extended Systems hautement évolutif Advantage Database Server.
• DataModules ont été simplifiés pour une utilisation avec les formulaires. Déposer un DataModule sur un formulaire crée un objet DataModule, pas un objet DataModRef comme cela se produisait dans les versions antérieures.
DataModules ont une propriété Parent qui vous permet de naviguer dans la hiérarchie des objets champ, ensemble de lignes (rowset) ou requête du formulaire qui contient le DataModule.
• Les icônes DataObject affichent leur propriété Name sur tous les outils de conception visuelle, y compris le Concepteur de Formulaire et le Concepteur de Modules de données (Designer DataModule), qui rend l'identification plus facile.
• Le CD dBASE Plus comprend la base de connaissance dBASE Plus en format HTML.
• La classe Rowset (ensemble de lignes) a une nouvelle propriété appelée masterChild qui vous permet de fixer une relation dBASE parent-enfant avec «contraintes» ou «sans contrainte». Dans les versions antérieures, les classes de données dBASE supportaient uniquement la prise en charge avec contrainte des relations parents-enfant.
• La nouvelle classe de base TextLabel est une classe à faible ressource de texte pour l'étiquetage des objets sur un formulaire. Le formulaire s’affiche plus rapidement et utilise moins de ressources.
• La classe TreeView apporte de nouvelles capacités à travers ses nouvelles méthodes streamChildren() et loadChildren(). Ces méthodes permettent aux TreeView d’être enregistrés et chargés depuis le disque.
• Dans le Concepteur de rapports, les objets Text qui sont liés (DataLinked) à un champ vide de la table affichent des astérisques leur permettant d’être visibles et sélectionnables.
• Un nouvel événement onkey a été ajouté pour Entryfields, Comboboxes et SpinBoxes.
• Une nouvelle propriété focusBitmap a été ajoutée à la classe bouton-poussoir (Pushbutton) qui vous permet de changer le bitmap lorsque le bouton-poussoir reçoit le focus.
• Un nouvel événement canSelChange a été ajouté à la classe Notebook qui vous permet de valider avant qu’un changement de page prenne effet et autorise ou interdit l’exécution du changement de page. L'événement passe le numéro de l'onglet Notebook devant être modifié en paramètre.
• Une nouvelle propriété DrawMode a été ajoutée à la classe Shape.
• Tous les nouveaux exemples d'applications réelles sont inclus dans dBASE Plus, dont un gestionnaire de contacts et un client de messagerie.
• les boites de Dialogues « Rechercher » (find) et «Rechercher et remplacer » (Find-and-Remplace) ne sont plus Modales. Vous pouvez maintenant accéder au code lorsque ces boîtes de dialogue sont sur l'écran.
• COPY TO ARRAY n’est plus limité à 32.767 éléments du tableau.
• Vous pouvez sélectionner le type de table FoxPro depuis l'inspecteur Fox lorsque vous utilisez le Concepteur de table.
• Toutes les informations de version (version de dBASE Plus, de build, version BDE) est affiché dans la boite de dialogue Aide | A propos (Help | About)
• Tous les types de fichiers appelés par DO et MODIFY COMMAND sont acceptés dans la boite de dialogue « open Table » • Nouvelles images dBASE Plus Web et "Powered by" sont inclus sur le CD d'installation dBASE Plus.
• Un nouveau CD d'installation multi-langue unique.
• Le concepteur de la classe (Designer Class)
• Source Aliasing
• Gestion dynamique des objets externes - DEO
• Classe TableDef
• Classe DBFIndex
• DBASE_SUPPRESS_STARTUP_DIALOGS
• Propriété baseClassName
• Lancer dBASE Plus ou application .Exe sans utiliser le BDE (voir ci-dessous).
• Optimisations de démarrage pour les applications Web (voir ci-dessous).
• Changement de lignes de commande pour PLUSRun.exe (voir ci-dessous).
• Evénement onDrop • ajouté à la classe Editor (voir ci-dessous).

 

Propriétés de la classe formulaire (Form)

• appSpeedBar
• persistent


Propriétés et méthodes de la classe Rowset

• autoNullFields propriété
• exactMatch
• isRowLocked ()
• isSetLocked ()

Propriétés de l'objet _app

• allowDEOExeOverride
• allowYieldOnMsg
• database
• ddeServiceName
• sourceAliases
• Speedbar
• terminateTimerInterval
• Web

Propriété de l’objet app utilisé pour outrepasser le comportement de Rowset SET SKIP

• detailNavigationOverride

Les fonctions de date

• DATETIME () fonction
• DTTOD () fonction
• DTTOT () fonction
• DTODT () fonction

Nouvel identifiant Preprocessor

• __version__

Quelques mots sur Source Aliasing et les objets externes dynamiques (DEO)

En quoi consiste Source Aliasing?
Source Aliasing est une nouvelle fonctionnalité dans dBASE Plus qui fournit a votre code source une véritable portabilité du code par e référencement indirect des fichiers - par un Alias. De même que le BDE vous permet de définir un alias pour représenter une base de données ou une collection de tables, Source Aliasing vous permet de définir des emplacements pour vos différents fichiers sans utiliser des chemins explicites - qui diffèrent souvent de machine à machine.


Note
Source aliasing ne fonctionne que dans l'environnement dBASE Plus ou lors de l'exécution des programmes au sein de l’environnement dBASE. Ce n'est pas une fonctionnalité du runtime. Pour accéder aux fichiers indirectement dans les applications déployées, utilisent des objets externes dynamiques (DEO) à la place de Source Aliasing.

 

Deo - Objets dynamiques extérieurs
dBASE Plus comprend un tout nouveau modèle d’objet extérieur qui, s'il est utilisé de manière cohérente, promet le plus faible coût total de possession de l'industrie.
DEO est une technologie unique qui permet non seulement aux utilisateurs, mais aux applications, de partager des classes d'actions à travers un réseau (et bientôt, à travers le Web). Au lieu de lier vos formulaires, des programmes, les classes et les rapports en un seul exécutable qui doit être installé manuellement sur chaque poste de travail, vous déployez une coquille - un simple exécutable dBASE Plus qui appelle un premier formulaire, ou qui fournit un menu à partir duquel vous pouvez accéder à vos formulaires et autre objets dBASE Plus.
Objets dynamiques peuvent être visuels, ou ils peuvent être des classes contenant seulement des «règles d'entreprise», qui travaillent et postent la transaction, ou enregistrer et récupérer des données. Chacun de ces objets peut être partagé sur votre réseau par tous les utilisateurs, et toutes les applications qui les appellent.
Conseils
Vous aurez à expérimenter avec DEO pour découvrir la meilleure approche pour la façon dont vous écrivez et déployer des applications. Cependant, voici quelques subtilités intéressantes que vous pourriez exploiter à votre avantage:

Mises à jour imprévue: Pensez que vous avez déjà envoyé une application dBASE Plus comme un exécutable complet. Maintenant, vous voulez apporter une modification à un seul module. Pas de problème, copiez simplement l'objet fichier dans le répertoire principal de l’application et il sera utilisé au lieu de celui intégré à l'exécutable. Vous n'avez pas besoin de redéployer l'application intégrale comme de la façon dont vous faites dans la plupart des produits d'autres applications de développement. Simplement l'objet modifié.

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

Dynamic Support Update: Vous souhaitez essayer un peu de code ou déployer un correctif pour un site client ou une succursale à distance? Pas de problème, envoyer par FTP l'objet fichier sur le serveur distant et la mise à jour est terminée.

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

Objets distribués: les objets peuvent être dans un seul dossier sur votre serveur, dans des dossiers différents autour de votre réseau, ou en double dans les dix dossiers pour la maintenance. Si un de vos serveurs est en panne, et qu’un objet est indisponible, dBASE Plus va rechercher les endroits suivant sur la liste jusqu'à ce qu'il 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.


Classe Rowset améliorée pour maintenir la version OODML du comportement de SET SKIP


• navigateMaster
• navigateByMaster

Nouvelle propriété de l’objet _app utilisée pour remplacer le comportement du Roset SET SKIP


• detailNavigationOverride

Nouvelle propriétés d’erreur de manipulation

• ErrorAction
• errorLogFile
• errorLogMaxSize
• errorHTMFile
• exeName

 

Lancer dBASE Plus ou application .exe sans utiliser le BDE


Pour les applications qui ne nécessitent pas l'accès aux données contenues dans les bases de données ou les tables, qui sont construites comme des applications Web, ou à partir d'un CD, dBASE Plus propose une option qui va contourner la connexion à la BDE lors du démarrage de dBASE Plus.exe ou une application .exe de dBASE Plus.
Pour configurer dBASE Plus, ou une application dBASE Plus, pour charger sans vous connecter au BDE, ajoutez les lignes suivantes à PLUS.INI ou au fichier INI de l'application:

[DataEngine]
DefaultEngine = NONE
Une fois PLUS.EXE ou PLUSRun démarrés, ils liront ce paramètre à partir du fichier .INI et contourneront le code de démarrage BDE.
L'utilisation de cette procédure rend le paramétrage de votre langue actuelle de Windows paramétrage du pilote de la langue par défaut.


Démarrage des optimisations pour les applications Web

PLUSRun a été optimisé pour charger des applications Web plus rapidement, utilisent moins de mémoire et d'éviter l'initialisation des objets qui seraient normalement visibles à l'écran (dans une application non-web).
Ces optimisations permettent aux applications Web de manipuler des charges plus lourdes que dans les versions précédentes et de les rendre beaucoup moins susceptibles de se bloquer ou de laisser des processus bloqués dans la mémoire.
Toutefois, ces changements signifient également que les applications Web ne peuvent plus créer ou accéder à des objets qui auraient normalement un composant visuel, comme des formulaires, des menus, barres d'outils champs de saisie, etc. Seuls des composants non-visuels tels que des modules de données, requêtes, rowsets, des classes utilisateur non-visuelles, etc devraient être utilisés.


Changement à la ligne de commande pour PLUSRun.exe

PLUSRun va maintenant démarrer une application .exe dBASE Plus qui lui est passé comme paramètre de ligne de commande.

Syntaxe
PLUSRun [options] [chemin de l'application et nom] [paramètres pour l’application]

Commutateurs
Le commutateur actuellement disponible,-c <. Nom du fichier ini>, précise un autre fichier .ini pour être utilisé à la place de celui par défaut.

Chemin de l'application et nom
Le nom et l'emplacement de l'application .exe. La désignation d'un chemin d'accès est facultative, cependant, quand un chemin n'est pas spécifié, PLUSRun assignera le lecteur et le répertoire actuel. Les paramètres chemin de l'application et nom contenant des espaces doivent être placés entre guillemets.
L'exemple de code suivant tente de lancer someapp.exe, avec 2 paramètres et myini.ini est utilisé au lieu de someapp.ini:

      PLUSRun -cmyini.ini someapp.exe someparm1 someparm2


Description
PLUSRun.exe déterminera si il a été appelé à partir d'une application en cours de lancement. Lorsque ce n'est pas le cas, PLUSRun.exe vérifie pour voir si un nom de fichier, et éventuellement avec le chemin d’accès, ont été passées en tant que paramètres sur la ligne de commande. S'ils l'étaient, PLUSRun.exe remplit le chemin d'accès complet, extension, et ouvre le fichier.


Le runtime commencera alors son exécution si le fichier trouvé contient du code dBASE Plus compilé. Si le fichier ne peut pas être trouvé, ou ne contient pas de code compilé dBASE Plus, une erreur est générée.
De cette caractéristique de lancement résulte un seul processus du système d'exploitation en cours pour chaque application dBASE Plus, plutôt que les deux processus qui se produisent lors de l'exécution d'une application.exe directement. Cela devient important pour les applications web, car il réduit le risque d'un accident qui se traduirait par le blocage de l'un des processus dans la mémoire.
Afin d'utiliser au mieux cette fonction, il sera nécessaire de configurer votre serveur Web de sorte qu'il construise une ligne de commande appropriée pour tous les applications web dBASE Plus.

 

Source : Guide de l'utilisateur dBASEPlus 2.61 - pages 5 à 8