Micro Systèmes n°102 novembre 1989
Micro Systèmes n°102 novembre 1989
  • Prix facial : 30 F

  • Parution : n°102 de novembre 1989

  • Périodicité : mensuel

  • Editeur : Société Parisienne d'Edition

  • Format : (203 x 271) mm

  • Nombre de pages : 230

  • Taille du fichier PDF : 188 Mo

  • Dans ce numéro : technologie... laser et informatique.

  • Prix de vente (PDF) : gratuit

Dans ce numéro...
< Pages précédentes
Pages : 190 - 191  |  Aller à la page   OK
Pages suivantes >
190 191
TECHNIQUE une application Presentation Manager qui, au fur et à mesure que l'on construit la fenêtre de dialogue, nous montre l'aspect qu'elle aura. — L'éditeur d'icônes, ou « ICON Editors, va nous permettre de dessiner l'icône représentant notre application. Par ailleurs, pour compléter le cycle de construction des programmes, on a besoin d'utilitaires pour précompiler le code SQL des programmes mais également pour associer les ressources de l'interface utilisateur aux programmes. Fabrication La réalisation d'une application informatique ressemble à bien des égards à la fabrication d'un objet. La seule différence est que l'on fabrique cet objet une seule fois. On pourrait penser que le travail est alors artisanal, mais il n'en est rien. Le cycle d'écriture, compilation, test et enfin installation est très répétitif et donc relève de méthodes de travail plutôt industrielles. Quatre étapes sont nécessaires pour l'obtention du code exécutable : — précompilation des sources SQC, — compilation des sourcesC, — édition de liens entre les fichiers objets obtenus, — compilation des ressources de l'application. Voici, listés ci-dessous, l'ensemble des outils nécessaires à la génération de l'application. SQL.CMD : rem* LIBRAIRIES : OS/2, SQL rem* rem* Options : rem* rem* -CO informations pour debug CODEVIEW rem* -NOI distinction majuscules/minuscules rem* -NOD pas de library par défaut rem* rem rem cl main.obj gpi.obj listbox.obj avio.obj thread.obj tpv.obj sqldyn.obj sqlerror.obj pmkbd.objctrdlg.obj menu.obj/link/CO/NOI/NOD LLIBCMT.LIB 0S2.LIBSQL_STAT.LIBSQL_DYN.LIB AUTO.CMD : rem ********************************************************* rem* rem* Recompilation complete de tous les sources rem* de la MAQUETTE TPV rem* rem call k main call k thread call sql tpv call k tpv call sql sqldyn call k sqldyn call k avio call k sqlerror call k listbox call k gpi call k pmkbd call kctrdlg call k menu call tpvlrc main ren main.exe tpv.exe rem rem* rem* rem* rem* rem* rem* rem* Options : Précompilation de fichier SQC Création de plan d'accès à la base associée -B Création d'un accès plan -P * rem* rem* rem ******************************************************** rem sqlprep%1.sqc TPV/P sqlbind%l.bnd TPV K.CMD : rem******************************************************** rem* COMPILATION : multi-threaded rem* rem* Options : rem* rem* -c pas d'appel a l'éditeur de liens rem* -Alfu modèle de chargement personnalisé : rem* large, DS <, SS rem* -Od pas d'optimisation pour debug rem* -Zi table des symboles pour debug rem* -Zl pas de library par défaut rem* -W3 niveau de warning maximum rem* -G2 jeu d'instructions du 80286 rem* -Gs pas de vérification de pile rem* -D définition de LINT ARGS pour la rem* vérification - de paramètres rem* rem******************************************************** rem cl/c/Àlfu/Od/Zi/Z1/W3/G2/Gs/DLINT_ARGS% 1.c rem rem* TPVL.CMD : EDITION DE LIENS MAQUETTE TPV Installation L'installation est une phase importante dans la réalisation d'applications sous PM relatives à la base de données relationnelles de l'IBM OS/2. Elle se fait en trois étapes — restauration ou installation de la base de données TPV sous Query Manager, — copie du programme. TPV.EXE et des deux fichiers bind TPV.BND et SQLDYN.BND dans le répertoire approprié, — liaison des plans d'accès TPV.BND et SQLDYN.BND avec la base de données TPV. Une fois les plans d'accès déclarés dans la base de données, les fichiers TPV.BND et SQLDYN.BND peuvent être supprimés. L'application se lance par l'ordre « TPV » ou peut s'installer dans la fenêtre de lancement de l'OS/2. L'application L'interface utilisateur est une fenêtre Presentation Manager. Vue du côté utilisateur, un menu est offert permettant de sortir de l'application, de choisir une requête préprogrammée ou encore de réaliser une requête dynamique. Si l'utilisateur choisit une requête préprogrammée, une fenêtre de dialogue lui est présentée. Cette fenêtre va lui permettre de sélectionner les paramètres des requêtes préprogrammées. Ainsi, il pourra, selon la requête, choisir une date ou un article. Une fois la requête lancée, le résultat sera affiché dans une « list box » sur la fenêtre princi- * pale. Dans le cas d'une requête dynamique, l'utilisateur aura 190 - MICRO-SYSTEMES Novembre 1989
SYSTEMES la possibilité de choisir parmi les tables de la base de données, d'effectuer les liens logiques entre ces tables et enfin de choisir les colonnes qui l'intéressent. Il pourra aussi choisir les critères de sélections. Comme pour les requêtes préprogrammées, le résultat se retrouvera inscrit sur la « list box » de la fenêtre principale. A chaque requête, une copie du résultat au format ASCII est effectuée sur le disque dur. Ces fichiers pourront être ultérieurement utilisés par des logiciels comme Excel. Organisation des modules La programmation dans Presentation Manager est une programmation orientée événement et par cas (en anglais : event driven and case oriented). Cela se traduit dans la pratique par des programmes ayant l'aspect de tableaux de traitement. On sait que le programme va réagir en fonction d'événements. Ces événements sont traduits par Presentation Manager sous la forme de messages. Ces messages sont alors postés à l'application qui procédera au traitement nécessaire ou bien laissera PM le faire. Un point important à savoir est que le traitement de ces messages ne doit pas avoir une durée supérieure à la demi-seconde. En effet, vu du côté utilisateur, cela donne une impression de temps de réponse long et contraignant. Du côté programme, tous les messages sont mis en file d'attente, ce qui peut être désastreux pour certaines applications. La bonne méthode est donc de déléguer les traitements lourds à une autre tâche. C'est ce qui est fait dans TPV. On a donc les modules de présentation qui sous-traitent tous les traitements longs à une tâche secondaire. Dans le jargon OS/2, cette tâche est appelée une « thread ». L'exécution de l'application TPV va se faire en plusieurs temps décomposés dans le diagramme suivant : 1 - Initialisation des ressources PM. 2 - Lancement de la tâche Serveur de requête SQL. 3 - Mise en attente de la fin des étapes 1 et 2. 4 - L'application tourne et la fenêtre principale est prête à réagir aux MSG envoyés par PM ou la tâche serveur. Si on regarde l'application en suivant le flot des messages, on aura le schéma suivant : Presentation Manager V Messages Tache Principale V ! Modules de Présentation de TPV V Messages Tache Secondaire V Modules de Requêtes de TPV Novembre 1989 Les modules de Présentation TPV vont recevoir des messages en provenance de PM ou bien de la tâche secondaire traitant les requêtes. Afin de simplifier le codage et l'organisation du programme, l'utilisateur ne peut sélectionner et lancer qu'une requête à la fois. Les modules de l'interface utilisateur Les modules de l'interface utilisateur sont un ensemble de fonctions permettant d'initialiser l'interface utilisateur et de lancer la tâche serveur de requête. Un certain nombre de « Dialog Procedures » et une « Window Procedure sont aussi présentes. Chacune d'elles va gérer les messages qui leur sont envoyés par Presentation Manager. Lorsque l'application est lancée, l'utilisateur a la possibilité de choisir sur le menu, soit une requête préprogrammée, soit une requête dynamique, soit de sortir de l'application. Dans les deux premiers cas, ce choix va provoquer le lancement par la Window Procedure d'une Dialog Box permettant de sélectionner les données nécessaires à la requête statique ou dynamique. Organisation des modules La source MAIN.0 contient les routines de gestion de la fenêtre principale et de choix utilisateur dans la barre de menu. Il se charge aussi du lancement de l'exécution des commandes utilisateur par la tâche secondaire. Ces fonctions sont implémentées dans les procédures suivantes : main Entrée du programme. WinBegin WinLoop Ouverture de la fenêtre principale. Boucle principale de réception des messages de la fenêtre et d'envoi de ces messages aux procédures concernées. WinEnd Fermeture de la fenêtre principale. WCommand Exécution des commandes choisies par l'utilisateur dans le menu. fnwpClient Gestion des messages de la fenêtre Client de la fenêtre principale. Ce module est déclaré dans WinBegin comme étant la « window procedure » principale de l'application. Par ailleurs, MAIN.0 contient les DialogProcedures de gestion des DialogBoxes des queries statiques. fnwpDlgBusy Dialo9Procedure d'accès à la base de donnees. Bloque l'application jusqu'à la fin de l'exécution de la requête SQL. fnwpDlgQuery01 DialogProcedure de la commande QUERY01. Correspond au query statique Résultats Nets par Rayon/Famille. fnwpDlgQueryl DialogProcedure de la commande QUERY1. Correspond au query statique Résultats Nets pour Un Rayon/Famille. fnwpDlgQuery2 DialogProcedure de la commande QUERY2. Correspond au query statique Evolution des Ventes Durant la Journée. fnwpDlgQuery3 DialogProcedure de la commande QUERY3. Correspond au query statique Ventilation des Moyens de Paiement. Les figures suivantes montrent de manière simple l'imbrication des modules. Afin de simplifier la compréhension de l'ensemble, ces modules sont écrits en pseudo-C. En effet, l'application complète représente 100 pages de listings (que vous trouverez sur la prochaine disquette AB- SYSTEMES). MICRO-SYSTEMES - 191



Autres parutions de ce magazine  voir tous les numéros


Liens vers cette page
Couverture seule :


Couverture avec texte parution au-dessus :


Couverture avec texte parution en dessous :


Micro Systèmes numéro 102 novembre 1989 Page 1Micro Systèmes numéro 102 novembre 1989 Page 2-3Micro Systèmes numéro 102 novembre 1989 Page 4-5Micro Systèmes numéro 102 novembre 1989 Page 6-7Micro Systèmes numéro 102 novembre 1989 Page 8-9Micro Systèmes numéro 102 novembre 1989 Page 10-11Micro Systèmes numéro 102 novembre 1989 Page 12-13Micro Systèmes numéro 102 novembre 1989 Page 14-15Micro Systèmes numéro 102 novembre 1989 Page 16-17Micro Systèmes numéro 102 novembre 1989 Page 18-19Micro Systèmes numéro 102 novembre 1989 Page 20-21Micro Systèmes numéro 102 novembre 1989 Page 22-23Micro Systèmes numéro 102 novembre 1989 Page 24-25Micro Systèmes numéro 102 novembre 1989 Page 26-27Micro Systèmes numéro 102 novembre 1989 Page 28-29Micro Systèmes numéro 102 novembre 1989 Page 30-31Micro Systèmes numéro 102 novembre 1989 Page 32-33Micro Systèmes numéro 102 novembre 1989 Page 34-35Micro Systèmes numéro 102 novembre 1989 Page 36-37Micro Systèmes numéro 102 novembre 1989 Page 38-39Micro Systèmes numéro 102 novembre 1989 Page 40-41Micro Systèmes numéro 102 novembre 1989 Page 42-43Micro Systèmes numéro 102 novembre 1989 Page 44-45Micro Systèmes numéro 102 novembre 1989 Page 46-47Micro Systèmes numéro 102 novembre 1989 Page 48-49Micro Systèmes numéro 102 novembre 1989 Page 50-51Micro Systèmes numéro 102 novembre 1989 Page 52-53Micro Systèmes numéro 102 novembre 1989 Page 54-55Micro Systèmes numéro 102 novembre 1989 Page 56-57Micro Systèmes numéro 102 novembre 1989 Page 58-59Micro Systèmes numéro 102 novembre 1989 Page 60-61Micro Systèmes numéro 102 novembre 1989 Page 62-63Micro Systèmes numéro 102 novembre 1989 Page 64-65Micro Systèmes numéro 102 novembre 1989 Page 66-67Micro Systèmes numéro 102 novembre 1989 Page 68-69Micro Systèmes numéro 102 novembre 1989 Page 70-71Micro Systèmes numéro 102 novembre 1989 Page 72-73Micro Systèmes numéro 102 novembre 1989 Page 74-75Micro Systèmes numéro 102 novembre 1989 Page 76-77Micro Systèmes numéro 102 novembre 1989 Page 78-79Micro Systèmes numéro 102 novembre 1989 Page 80-81Micro Systèmes numéro 102 novembre 1989 Page 82-83Micro Systèmes numéro 102 novembre 1989 Page 84-85Micro Systèmes numéro 102 novembre 1989 Page 86-87Micro Systèmes numéro 102 novembre 1989 Page 88-89Micro Systèmes numéro 102 novembre 1989 Page 90-91Micro Systèmes numéro 102 novembre 1989 Page 92-93Micro Systèmes numéro 102 novembre 1989 Page 94-95Micro Systèmes numéro 102 novembre 1989 Page 96-97Micro Systèmes numéro 102 novembre 1989 Page 98-99Micro Systèmes numéro 102 novembre 1989 Page 100-101Micro Systèmes numéro 102 novembre 1989 Page 102-103Micro Systèmes numéro 102 novembre 1989 Page 104-105Micro Systèmes numéro 102 novembre 1989 Page 106-107Micro Systèmes numéro 102 novembre 1989 Page 108-109Micro Systèmes numéro 102 novembre 1989 Page 110-111Micro Systèmes numéro 102 novembre 1989 Page 112-113Micro Systèmes numéro 102 novembre 1989 Page 114-115Micro Systèmes numéro 102 novembre 1989 Page 116-117Micro Systèmes numéro 102 novembre 1989 Page 118-119Micro Systèmes numéro 102 novembre 1989 Page 120-121Micro Systèmes numéro 102 novembre 1989 Page 122-123Micro Systèmes numéro 102 novembre 1989 Page 124-125Micro Systèmes numéro 102 novembre 1989 Page 126-127Micro Systèmes numéro 102 novembre 1989 Page 128-129Micro Systèmes numéro 102 novembre 1989 Page 130-131Micro Systèmes numéro 102 novembre 1989 Page 132-133Micro Systèmes numéro 102 novembre 1989 Page 134-135Micro Systèmes numéro 102 novembre 1989 Page 136-137Micro Systèmes numéro 102 novembre 1989 Page 138-139Micro Systèmes numéro 102 novembre 1989 Page 140-141Micro Systèmes numéro 102 novembre 1989 Page 142-143Micro Systèmes numéro 102 novembre 1989 Page 144-145Micro Systèmes numéro 102 novembre 1989 Page 146-147Micro Systèmes numéro 102 novembre 1989 Page 148-149Micro Systèmes numéro 102 novembre 1989 Page 150-151Micro Systèmes numéro 102 novembre 1989 Page 152-153Micro Systèmes numéro 102 novembre 1989 Page 154-155Micro Systèmes numéro 102 novembre 1989 Page 156-157Micro Systèmes numéro 102 novembre 1989 Page 158-159Micro Systèmes numéro 102 novembre 1989 Page 160-161Micro Systèmes numéro 102 novembre 1989 Page 162-163Micro Systèmes numéro 102 novembre 1989 Page 164-165Micro Systèmes numéro 102 novembre 1989 Page 166-167Micro Systèmes numéro 102 novembre 1989 Page 168-169Micro Systèmes numéro 102 novembre 1989 Page 170-171Micro Systèmes numéro 102 novembre 1989 Page 172-173Micro Systèmes numéro 102 novembre 1989 Page 174-175Micro Systèmes numéro 102 novembre 1989 Page 176-177Micro Systèmes numéro 102 novembre 1989 Page 178-179Micro Systèmes numéro 102 novembre 1989 Page 180-181Micro Systèmes numéro 102 novembre 1989 Page 182-183Micro Systèmes numéro 102 novembre 1989 Page 184-185Micro Systèmes numéro 102 novembre 1989 Page 186-187Micro Systèmes numéro 102 novembre 1989 Page 188-189Micro Systèmes numéro 102 novembre 1989 Page 190-191Micro Systèmes numéro 102 novembre 1989 Page 192-193Micro Systèmes numéro 102 novembre 1989 Page 194-195Micro Systèmes numéro 102 novembre 1989 Page 196-197Micro Systèmes numéro 102 novembre 1989 Page 198-199Micro Systèmes numéro 102 novembre 1989 Page 200-201Micro Systèmes numéro 102 novembre 1989 Page 202-203Micro Systèmes numéro 102 novembre 1989 Page 204-205Micro Systèmes numéro 102 novembre 1989 Page 206-207Micro Systèmes numéro 102 novembre 1989 Page 208-209Micro Systèmes numéro 102 novembre 1989 Page 210-211Micro Systèmes numéro 102 novembre 1989 Page 212-213Micro Systèmes numéro 102 novembre 1989 Page 214-215Micro Systèmes numéro 102 novembre 1989 Page 216-217Micro Systèmes numéro 102 novembre 1989 Page 218-219Micro Systèmes numéro 102 novembre 1989 Page 220-221Micro Systèmes numéro 102 novembre 1989 Page 222-223Micro Systèmes numéro 102 novembre 1989 Page 224-225Micro Systèmes numéro 102 novembre 1989 Page 226-227Micro Systèmes numéro 102 novembre 1989 Page 228-229Micro Systèmes numéro 102 novembre 1989 Page 230