23 juin 2003
Par Jean-Yves Cardelli
« Conversion de Omnis
73 vers Omnis Studio ». — Éléments de
décision menant au choix de la conversion — Que nous apporte
Omnis Studio comparé
à Omnis 7 ? » De nouveaux objets graphiques, GUI, « TabPane, SubWindows, TreeList, … ». » La programmation orientée Objet, POO, avec les concepts d’héritage, d’instance, de code objet, de modélisation de la programmation, … » La simplification de l’accès aux données, gestion par table et schéma. » Une meilleure intégration du client « Web Thin » et aussi de « Web Enabler ». » Vu les possibilités de modélisation du code et de la programmation, le rendement des développements est meilleur mais aussi la maintenance des applications. » L’interface prend un coup de jeune grâce notamment aux objets « GUI ». » Le support de nouvelles plateformes est étendu à Solaris, Linux, Mac OSX et Windows XP. Convertir ou ne pas
convertir, tel est le choix ? a) Ne pas
convertir, méthode progressive » On conserve l’application Omnis 73 v7.1 au minimum. » La disponibilité de l’ancienne application est quasi immédiate. » On garde la possibilité de partager les données de type « DML/DF1 » entre Omnis 7 et Omnis Studio. » On écrit la nouvelle application en mode natif Omnis Studio. » La mise en production de la nouvelle application est progressive. » Par contre, il faut prévoir la maintenance de deux applications, une en Omnis 7 l’autre Omnis Studio. b) Ne
pas convertir, méthode directe » On abandonne définitivement l’application Omnis 7, ce qui peut entraîner un arrêt plus ou moins long de l’exploitation de l’application d’origine. » On réécrit l’application en mode natif Omnis Studio. » Le modèle de programmation est maintenant orienté objet (POO). » De nouveaux composants de l’interface Omnis Studio sont exploitables. » Il faut prendre en compte du temps de développement. c)
Convertir avec les outils de conversion existants » Les temps de développements sont raccourcis puisque les procédures de conversion récupèrent un maximum de code existant. » Les délais de mise en production également. » Les coûts de développement sont réduits. » Le code final n’est pas du code Omnis Studio, c’est de l’Omnis 7 dans de l’Omnis Studio. » Pour intégrer les nouvelles fonctionnalités d’Omnis Studio, il faut repenser la programmation et donc réécrire une partie du code. » La gestion des événements est très différente. Il faut revoir celle-ci complètement, une fois la conversion faite. d)
Convertir, quelques éléments de réflexion » La qualité du code Omnis 7. » Les besoins fonctionnels ont-ils changé ? » L’interface utilisateur doit-elle être mise au goût du jour ? » Les développeurs sont-ils formés à Omnis Studio, sont-ils disponibles ? » Les utilisateurs sont-ils prêts à supporter les coûts induits ? Conclusion : On ne peut se passer d’une réflexion sur l’opportunité de convertir une application en Omnis Studio. Le choix dépend en grande partie de la stratégie liée à l’utilisateur final mais aussi de votre stratégie d’entreprise informatique. Indépendamment des problèmes techniques et
fonctionnels, les considérations budgétaires ont un poids
important dans la décision finale. « Conversion de Omnis
73 vers Omnis Studio ». — Les outils et les concepts — Les outils de
conversion Omnis »
Où
trouvez les outils de conversion, dernière mise à jour » La société Raining Data met à
notre disposition les outils de conversion aux adresses suivantes : » À ces adresses, vous y trouverez l’ensemble « Conv0101212.zip », la solution « Atelier de portage » ainsi qu’une suite de questions-réponses sur la conversion. »
L’ensemble
« Conv010112.zip » comprend » « Converter.ppt », est une présentation de la conversion écrite par Richard Motimer de chez Raining Data. » Le dossier « help/O$Conver » est une aide intégrable à Omnis Studio. L’installation se fait par un simple « cliqué glissé » dans le répertoire « help » de l’installation de Studio. Tous les éléments de la conversion sont repris module par module et point par point dans une aide très détaillée. » « O7analyse.lbr » est une application qui, sous Omnis 73, analyse l’application à convertir et crée un fichier des éléments à modifier. Celui-ci sera utilisé par « O$Converter.lbs ». » « O$Converter.lbs » est une application Omnis Studio. Elle utilise le fichier généré par « O7analyse » pour convertir tout le code de l’application Omnis 73 en application Omnis Studio. »
Autres informations
utiles » Vous
trouverez également d’autres informations sur la conversion aux
adresses suivantes : Objectifs
des outils de conversion » Les outils de conversion vont nous permettre d’obtenir une librairie Studio la plus fonctionnelle possible. Si l’application Omnis 73 est bien développée, 90% du code converti sera directement utilisable, le reste devra être adapté à la main. » Ils vous permettent également de passer graduellement en Studio. » Ils automatisent des actions de conversion. » Le code source est disponible et ils deviennent donc modulables. Ce qui change avec
Omnis Studio a)
La
terminologie Omnis Studio vs Omnis 73
b)
Les
grandes différences » La gestion des évènements est revue complètement. La programmation est vraiment événementielle. » Les variables globales sont un concept Omnis 7 et non Studio. » La notion d’instance permet l’exécution d’une même classe (formats) plusieurs fois. Chaque instance (exécution) ayant son propre environnement de travail, mémoire, accès base de données, … » Les variables d’instances apparaissent ce qui permet l’exécution multiple de classes. » La programmation est orientée objet. On peut intégrer, gérer, et programmer facilement des objets développés par des tiers. » Le concept d’héritage est nouveau. Il n’y a pas d’équivalent sous O7. Conclusion Pour mener à bien la conversion de Omnis 73 vers Omnis Studio, l’utilisation des outils de Raining Data est indispensable. La seule difficulté est liée à l’apprentissage de Omnis Studio. « Conversion de Omnis
73 vers Omnis Studio ». — Protocole de conversion — NB : Bien entendu, celui-ci n’est
qu’un exemple minimaliste et peut être amélioré et
agrémenté selon vos besoins. a)
Sauvegardez
ou faites une copie de votre librairie Omnis 73
« MaLibrairie.LBR ». b)
Sauvegardez
ou faites une copie de vos fichiers de données Omnis 73
« MesDonnées.DFn ». c)
Ouvrez
votre librairie à partir d’Omnis 73 v7.1 » Il vous sera éventuellement demandé de convertir la librairie et les données. » NB. Si vous devez convertir les données, il est préférable de faire ce qui suit – point d – en premier avec la version d’Omnis 7 courante, puis de revenir au début de cette étape. d)
Commencez par examiner les données » Utilisez pour ça les utilitaires « CheckData » et « Examine Data » » Identifiez les slots endommagés » Retirez les slots non désirés » Convertissez les « Old Data Type » » Réorganisez et optimisez les fichiers » NB. Ce processus doit être effectué deux fois e)
À partir de votre librairie Omnis 73
convertie en O73 v7.1 » Lancez le vérificateur de procédures « Procedure Checker » -
Erreurs
seulement -
Inclus
les avertissements de niveau 1 -
Inclus
les avertissements de niveau 2 » Et ce tant qu’il reste des erreurs de tous niveaux f)
Sauvegardez
dans un dossier à part votre nouvelle librairie et vos nouveaux fichiers
de données g)
Copiez dans un même dossier votre nouvelle librairie,
« O7Analyser » et « O$Converter » h)
Exécutez « O7Analyser » à
partir de O73 v7.1 » Sélectionnez dans le menu « O7Analyser » l’item « Analyse » » Ouvrez et choisissez la librairie à analyser. La nouvelle ! i)
Fermez O73 quand c’est fini » Remarquez la présence d’un fichier « OA_MaLibrairie.DF1 ». Ce fichier contient les informations nécessaires à la conversion à partir de « Omnis Studio ». j)
Copier le dossier « O$Convert » du
dossier help des outils de conversion dans le dossier
« Help » de Studio k)
Lancez Omnis Studio 3.xx et exécutez
« O$Converter » » Sélectionnez dans le menu « O$Converter » l’item « Analyse » » Ouvrez et choisissez la librairie à analyser, type de fichier (*.lbr) » Répondre Oui aux questions concernant la conversion de base de « Omnis Studio » » NB. Si vous avez des erreurs dans le rapport
« TraceLog » de Studio n’allez pas plus loin.
Retournez à Omnis 73 pour les corriger, faites une sauvegarde
de la librairie rectifiée. Puis recommencez à
l’étape « O7Analyser » » Puis choisissez convertir, répondre « Oui » à la question, « Conversion des données OA_MaLibrairie.df1 », et attendre, attendre, … :-D » Si « O$Converter »
vous propose d’ouvrir la librairie, ne soyez pas trop optimistes ! » Imprimez
le log de conversion,sur papier, en PDF ou sur fichier pour une consultation
ultérieur. » Il n’est pas possible d’enregistrer le log,
semble-t-il !!! l)
Il
vous reste à finaliser la conversion » 10% de code à revoir si vous avez bien travaillé ;-) Conclusion Ceci n’est qu’un exemple d’une méthodologie vous permettant de comprendre la mise en œuvre de la conversion. À vous de trouver la formule qui vous convienne le mieux. J’ai testé cette méthode à partir d’une librairie et de données en Omnis 73 v7.1, de la version Omnis 73 v7,1 et de la version d’Omnis Studio 3.1. Article écrit et
mise à disposition par Jean-Yves Cardelli. Société
AlterInfo, juin 2003 |