Utilisation de cases à cocher
Vous pouvez dans vos DSPF utiliser des cases à cocher, ce qui les rendra plus sympathique sans passer sur un vrai interface graphique.
Voici deux exemples d’utilisation.
1) A choix unique
C’est le mot clé SNGCHCFLD qui permet de les définir.
Le DSPF
A* Case à cocher
A* Bouton à choix unique
A DSPSIZ(24 80 *DS3)
A CA03(03)
A R FMT01
A 1 20'Zone choix simple'
A 3 2'Sexe :'
A F1 2Y 0B 3 20SNGCHCFLD(*AUTOSLT (*NUMCOL 3))
A CHOICE(1 '>Homme ')
A CHOICE(2 '>Femme ')
A CHOICE(3 '>Inconnu')
A 23 02'F3=Exit'
Le programme RPGLE
**free
ctl-opt DFTACTGRP(*NO) ;
dcl-f BOUTON5 WORKSTN ;
dou *in03 ;
exfmt fmt01 ;
if not *in03;
dsply ('Valeur sélectionée ' + %char(f1)) ;
endif ;
enddo ;
*inlr = *on ;
2) A choix multiple
C’est le mot clé MLTCHCFLD qui permet de les définir.
Le DSPF
A* Case à cocher
A* Bouton à choix multiple
A DSPSIZ(24 80 *DS3)
A CA03(03)
A R FMT01
A 1 20'Zone choix multiple'
A 3 2'Plat :'
A F1 2Y 0B 3 20MLTCHCFLD((*NUMCOL 3))
A CHOICE(1 'Entrée ')
A CHOICE(2 'Plat ')
A CHOICE(3 'Dessert ')
A CHCCTL(1 &CHOIX1 )
A CHCCTL(2 &CHOIX2 )
A CHCCTL(3 &CHOIX3 )
A CHOIX1 1Y 0H
A CHOIX2 1Y 0H
A CHOIX3 1Y 0H
A 23 02'F3=Exit'
Le programme RPGLE
**free
ctl-opt DFTACTGRP(*NO) ;
dcl-f BOUTON6 WORKSTN ;
dou *in03 ;
exfmt fmt01 ;
if not *in03;
dsply ('Entrée ' + %char(choix1)) ;
dsply ('Plat ' + %char(choix2)) ;
dsply ('Dessert ' + %char(choix3)) ;
endif ;
enddo ;
*inlr = *on ;
Remarque :
Vous pouvez utiliser des variables ou des identifiants de message comme texte associé.
*NUMCOL sert à mettre les options sur la même ligne , par défaut elles sont en colonne.