Diminuer les indicateurs dans vos RPGLE

Pour les nouveaux développeur sur l’IBMi l’utilisation des indicateurs n’est pas naturel, voici comment on peut les diminuer


1) En utilisant l’INFDS pour tester les touches de fonction

2) En utilisant une zone attribut pour les DSPATR

Attention vous ne pourrez pas tous les remplacer


https://www.ibm.com/docs/fr/i/7.5?topic=80-dspatr-display-attribute-keyword-display-files

Voici un exemple

DDS

     A*                                                              
     A                                      DSPSIZ(24 80 *DS3)             
     A                                      CA03                           
     A          R FMT01                                                    
     A*        
     A                                      OVERLAY                        
     A                                  1 28'Test TOUCHES INFDS/ ATTRIBUT' 
     A                                  3  2'Text'                         
     A            ZONE          12A  B  3  9DSPATR(&ATTRIB)                
     A            ATTRIB         1A  P                                     
     A                                 22  3'F3=Exit'                      

RPGLE

**free                                 
// Exemple d'utilisation d'un écran    
// Sans indicateurs                    
//                                     
Dcl-F TOUCHE WORKSTN INFDS(FICHIERDS) ;
/INCLUDE INFDS_INC                     
/INCLUDE TOUCHE_INC                    
/INCLUDE ATTR_INC                      
// initialisation des attributs        
       Zone = 'Welcome';               
       ATTRIB  = P_HI;                 
// Boucle su F3                        
   DOU Touche_Ecran = F3 ;             
       Exfmt FMT01 ;                   
   ENDDO ;                             
//                                     
   *inlr = *on ;                   

Remarque :

Vous retrouverez les inculde ici

https://github.com/Plberthoin/PLB/tree/master/INCLUDE