Vous êtes sur la page 1sur 3

0S/400 Dveloppement de formulaire avec lditeur SDA

Dpartement Informatique

ASR3 DUT info - niveau 1 Sujet 3 (TP) 2011/2012

Dveloppement sous OS/400


Cycle
Comme vous lavez vu pendant le cours, une application correspond uniquement au calcul et au stockage de donnes. On peut simplier cette dnition en admettant quune application ne fait rien dautre que manipuler des donnes. Pour dvelopper une application sous OS/400 trois tapes successives sont donc ncessaires : 1. dnir la structure des donnes manipules par lapplication ; 2. dnir les mthodes de saisie et dafchage de ces donnes ; 3. dnir les traitements effectuer sur ces donnes. Chacune de ces 3 tapes ncessite lutilisation dun langage spcique ( DDS ou SQL pour ltape 1, DDS pour ltape 2, COBOL , CL , JAVA , etc. pour ltape 3). On dit quon a besoin dcrire les sources de chacune des 3 tapes de la construction de lapplication. Chacune des trois tapes de ce cycle de dveloppement a besoin dun type dobjet particulier (de type *FILE pour ltape 1 et 2, de type *PGM pour ltape 3). La cration de ces objets ncessite lappel de commandes systmes transformant les sources crit dans un des langages ncessaires vers un objet du type attendu. Ces commandes sont dites de compilation. On les dmarre gnralement en traitement par lots (mode batch) via lappel de la commande de compilation dans SBMJOB ou plus simplement travers certaines options de PDM . Une fois les objets crs il ne reste qu dmarrer lapplication en excutant le programme. Pour mmoire, la commande permettant dexcuter un programme est la commande CALL , qui, sous PDM , correspond loption 16. Vous apprendrez crer des sources dnissant la structure des donnes et les sources des programmes dans dautres cours de votre formation (Analyse et Base de Donnes pour les structures, Algorithmique et Cobol pour les traitements). Les mthodes de saisie et dafchage des donnes se limiteront dans un premier temps la cration de descriptions dcran tel quun programme pourra les afcher sur votre terminal pour interagir avec lutilisateur. Il sagit en fait de simple formulaires.

Outils
Sur lOS/400 les seuls objets pouvant contenir les donnes manipules par une application sont ceux de type *FILE (les chiers). Les chiers peuvent galement contenir des donnes ncessaires la construction (sources) ou lexcution dune application (description dcran, etc.). Pour diffrencier les natures des chiers en fonction de leur contenu lOS/400 utilise un attribut dans la description de ce type dobjet. Pour crer des sources vous avez vu lutilitaire SEU qui permet de rdiger nimporte quel source en utilisant un langage de votre choix parmi ceux ncessaire. Pour excuter les transformations des sources (dcrans ou de programmes) en chiers ou programmes vous pouvez appeler les commandes adquates (CRTDSPF, CRTCBLPGM, CRTCLPGM, CRTJVAPGM, etc.). Lappel de ces commandes peut tre fait pour vous via lutilitaire PDM (Program Development Manager). Cest cette dernire solution qui devra tre utilise dans le droulement de vos TP. Il est hors de porte du cours de systme dapprendre le langage de description dcran (DDS). Vous allez donc utiliser lutilitaire SDA (Screen Design Aid) qui permet de crer aisment des sources de description dcran et de les transformer en chier adquat (attribut DSPF) pour le droulement de ce TP.

crans
Un cran est un mcanisme permettant un programme et un utilisateur de communiquer. Cela correspond un formulaire dchange. Prparer un cran revient donc prparer un formulaire.

Techniquement, un cran OS/400 est une succession de zones. Toutes les zones portent un nom et peuvent, de plus, avoir des attributs dafchages permettant une mise en valeur particulire lors de lafchage de lcran dans lequel elles sont prsentes. Certaines zones sont constantes et correspondent des informations non modiables ni par lutilisateur, ni par le programme. Les zones non constantes sont dites variables. Elles permettent au programme de montrer des informations lutilisateur (Output, ou Sortie), de demander des informations lutilisateur (Input, ou Entre) ou les deux (Both). Le contenu dune zone variable peut tre soit alphabtique, soit numrique en fonction des donnes auxquelles elles sont lies. SDA permet de dnir graphiquement un cran sans avoir utiliser le langage source de description dcran. Une fois un source dcran prpar, SDA permet de crer automatiquement le chier contenant lcran lui mme (objet de type *FILE et dattribut DSPF). Dun point de vue terminologique sous OS/400 un formulaire (le remplissage dun cran de votre terminal) est appel un format. Les source des formats sont regroups dans des images-cran au sein dun membre dun chier. Un chier source (attribut PF-SRC ) peut donc contenir soit des sources de programme (un source de programme par membre) soit des sources dcrans (plusieurs formats dans un membre).

Exercice
Sauf indication contraire durant toute la dure de ce TP il est STRICTEMENT INTERDIT dutiliser les commandes OS/400 autre que STRPDM . Vous ferez donc bien attention aux options de commandes offertes par PDM (notamment 12, 14, 16, 17, etc.) comme aux touches de fonctions actives ( F12 , F5 , etc.). Exercice 1 : Un cran de base et son utilisation Q 1. Crez un chier source (attribut PF-SRC ) nomm SOURCES dans votre bibliothque personnel. Q 2. Copiez dans votre chier SOURCES le membre CALC_AGE qui se trouve dans le chier PUBLIC/ASR3. Q 3. En utilisant la commande STRSDA, dans un membre nomm AGE de votre chier SOURCES crez un format nomm FORMAT1 correspondant exactement au schma suivant (vous ne devez inclure dans le format ni le tour de lcran ni les rgles horizontales et verticales qui sont juste des aides de comprhension du dessin) :
1 2 3 4 5 6 7 8 1 0 0 0 0 0 0 0 0 +--------------------------------------------------------------------------------+ | AGE | | | | NOM ____________________ | | | | PRENOM ____________________ | | | | DATE DE NAISSANCE ___ / ___ / _____ | | | | | | | | | | | | | | | | Appuyer sur | | ENTREE | | pour continuer | | | | | | | | | | | | | +--------------------------------------------------------------------------------+

10

15

20

Au total votre format ne doit pas contenir plus de 12 zones. Les zones variables doivent avoir comme nom : VNOM (20 caractres) 2

VPRENOM (20 caractres) VJOUR (2 nombres) VMOIS (2 nombres) VANNEE (4 nombres)

Q 4. Sauvegardez, compilez puis testez votre format. Q 5. Compilez puis excutez le programme CALC_AGE. Exercice 2 : Modications de base Q 1. Crez un nouveau format nomm FORMAT1BIS en copiant votre format FORMAT1. Dans la suite de lexercice vous allez travailler sur le format FORMAT1BIS. Q 2. Ajoutez en haut et droite du format le nom du systme en cours dutilisation. Q 3. Ajoutez en haut et gauche du format la date courante. Q 4. Dplacez la zone dafchage du message dappui sur la touche
Entre

vers la position (40,10).

Q 5. Faites en sorte que cette zone soit entirement crite de couleur blanche. Q 6. Copiez cette zone la position (5,10). Est-ce possible ? Q 7. Copiez cette zone en position (51,18). Q 8. Enregistrez votre cran. Exercice 3 : cran de sortie Q 1. Crez un format FORMAT2 votre got comportant au moins 1 zone de texte en sortie nomme VNOM (de 20 caractres) et une zone numrique nomme AGE (de 6 chiffres). Q 2. Recopiez le source du programme de lexercice 1 dans votre chier SOURCES sous le nom CALC_AGE2. Q 3. Modiez ce source en supprimant les lignes suivantes : DCL SNDMSG VAR(&AGE) TYPE(*DEC) LEN(6)| MSG(Bonjour *CAT &VPRENOM *CAT *CAT + &VNOM *CAT . Vous avez *CAT &CAGE *CAT + ans.) TOUSR(&CUSER)

Q 4. Ajouter ce source comme dernire ligne, juste avant la commande ENDPGM, la ligne suivante : SNDRCVF RCDFMT(FORMAT2)

Q 5. Compilez puis excuter le programme CALC_AGE2.