Accueil du site > Les articles > changer les attributs des zones écran sans utiliser d’indicateur
Version à imprimer Enregistrer au format PDF

changer les attributs des zones écran sans utiliser d’indicateur

Zone programme sytème

jeudi 1er septembre 2005, par Serge Gomes Visites  38394 |Popularité : 27% 

Il est possible de changer les attributs d’une zone (ou d’un format) écran sans utiliser d’indicateurs. Pour cela il faut :
- Déclarer dans la DDS de l’écran une "zone programme" (P_FIELD).
- Affecter à votre zone la valeur HEXA désirée avant d’écrire le format concerné de l’écran.

Exemple RPG-DDS P-FIELD usage (extrait IBM)=>

     A          R RECORD                   2DSPATR(&PFLD1) ;
     A            FLD1           5A     2  6DSPATR(&PFLD2) ;
     A            FLD2           5A     2  6DSPATR(&PFLD2) ;
     A            PFLD1          1A  P
     A            PFLD2          1A  P

Cela permet en RPG (ici mettre la zone en surbrillance)

     C            EVAL     PFLD2 = X’21’

Exemple en ADELIA

Avec ADELIA lui-même gourmand en indicateur le problème du nombre d’indicateurs disponibles se pose souvent.

- Voici comment procéder au niveau de la maquette écran

— F13 (Gestion des formats)
— Opt 8 sur la zone concernée

—  ? devant la zone à traiter (définition de zone)
— F10=>Autres paramètres

- Extrait code source ADELIA

SI ZTO_NUM_LOT = 0
  H_CD_LIG = &CONVERSION_CAR(’A3’)             
SINON                                             
  H_CD_LIG = *BLANK                            
FIN                                               

Liste des codes Hexa utilisables P-FIELD table (informations midrange)=>

D ND              C                   CONST( X’27’)
D PR_ND           C                   CONST( X’A7’)
D Normal          C                   CONST( X’20’)
D PR_Normal       C                   CONST( X’A0’)
D RI              C                   CONST( X’21’)
D PR_RI           C                   CONST( X’A1’)
D HI              C                   CONST( X’22’)
D HI_RI           C                   CONST( X’23’)
D PR_HI           C                   CONST( X’A2’)
D PR_HI_RI        C                   CONST( X’A3’)
D UL              C                   CONST( X’24’)
D UL_RI           C                   CONST( X’25’)
D UL_HI           C                   CONST( X’26’) 
D PR_UL           C                   CONST( X’A4’) 
D PR_UL_RI        C                   CONST( X’A5’) 
D PR_UL_HI        C                   CONST( X’A6’) 
D BL              C                   CONST( X’28’) 
D BL_RI           C                   CONST( X’29’) 
D BL_HI           C                   CONST( X’2A’) 
D BL_HI_RI        C                   CONST( X’2B’) 
D BL_UL           C                   CONST( X’2C’) 
D BL_UL_RI        C                   CONST( X’2D’) 
D BL_UL_HI        C                   CONST( X’2E’) 
D PR_BL           C                   CONST( X’A8’) 
D PR_BL_RI        C                   CONST( X’A9’) 
D PR_BL_HI        C                   CONST( X’AA’) 
D PR_BL_HI_RI     C                   CONST( X’AB’) 
D PR_BL_UL        C                   CONST( X’AC’) 
D PR_BL_UL_RI     C                   CONST( X’AD’) 
D PR_BL_UL_HI     C                   CONST( X’AE’)

*** COLORS *** D White C CONST( X’22’) D White_UL C CONST( X’26’) D White_RI C CONST( X’23’) D White_RI_CS C CONST( X’33’)

D PR_White C CONST( X’A2’) D PR_White_UL C CONST( X’A6’) D PR_White_RI C CONST( X’A3’) D PR_White_RI_CS C CONST( X’B3’)

D Green C CONST( X’20’) D Green_RI C CONST( X’21’) D Green_UL C CONST( X’24’) D Green_UL_RI C CONST( X’25’)

D PR_Green C CONST( X’A0’) D PR_Green_RI C CONST( X’A1’) D PR_Green_UL C CONST( X’A4’) D PR_Green_UL_RI C CONST( X’A5’)

D Red C CONST( X’28’) D Red_RI C CONST( X’29’) D Red_HI C CONST( X’2A’) D Red_HI_RI C CONST( X’2B’) D Red_UL C CONST( X’2C’) D Red_UL_RI C CONST( X’2D’) D Red_UL_BL C CONST( X’2E’)

D PR_Red C CONST( X’A8’) D PR_Red_RI C CONST( X’A9’) D PR_Red_HI C CONST( X’AA’) D PR_Red_HI_RI C CONST( X’AB’) D PR_Red_UL C CONST( X’AC’) D PR_Red_UL_RI C CONST( X’AD’) D PR_Red_UL_BL C CONST( X’AE’)

D Turq_CS C CONST( X’30’) D Turq_CS_RI C CONST( X’31’) D Turq_UL_CS C CONST( X’34’) D Turq_UL_RI_CS C CONST( X’35’)

D PR_Turq_CS C CONST( X’B0’) D PR_Turq_CS_RI C CONST( X’B1’) D PR_Turq_CS_UL C CONST( X’B4’) D PR_Turq_CSULRI C CONST( X’B5’)

D Yellow_CS C CONST( X’32’) D Yellow_CS_UL C CONST( X’36’)

D PR_Yellow_CS C CONST( X’B2’) D PR_Yellow_CSUL C CONST( X’B6’)

D Pink C CONST( X’38’) D Pink_RI C CONST( X’39’) D Pink_UL C CONST( X’3C’) D Pink_UL_RI C CONST( X’3D’) D PR_Pink C CONST( X’B8’) D PR_Pink_RI C CONST( X’B9’) D PR_Pink_UL C CONST( X’BC’) D PR_Pink_UL_RI C CONST( X’BD’)

D Blue C CONST( X’3A’) D Blue_RI C CONST( X’3B’) D Blue_UL C CONST( X’3E’)

D PR_Blue C CONST( X’BA’) D PR_Blue_RI C CONST( X’BB’) D PR_Blue_UL C CONST( X’BE’)

P.-S.

Merci à Philippe Soriano qui m’a renseigné sur son forum.