Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > AS/400
AS/400 Le Forum d'entraide sur IBM AS/400 - iSeries. RPG.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 30/12/2009, 09h13   #1
Futur Membre du Club
 
Inscription : décembre 2008
Messages : 27
Détails du profil
Informations personnelles :
Localisation : France, Oise (Picardie)

Informations forums :
Inscription : décembre 2008
Messages : 27
Points : 17
Points : 17
Par défaut Affichage en couleur de certains messages

Bonjour,

Quelqu'un aurait-il une solution pour afficher en couleur certains messages que nous recevons sur l'écran via DSPMSG?

merci
brunodu60 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2009, 14h09   #2
Membre Expert
 
Patrick
Inscription : mai 2008
Messages : 816
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 41
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : mai 2008
Messages : 816
Points : 1 035
Points : 1 035
Il faut concatener un code hexa contenant la couleur avec ton message.
Exemble

CHGVAR &MES VALUE( x'22' tcat &MES).

Le message sera en White



Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
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'                        )
K2R400 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2009, 15h24   #3
Futur Membre du Club
 
Inscription : décembre 2008
Messages : 27
Détails du profil
Informations personnelles :
Localisation : France, Oise (Picardie)

Informations forums :
Inscription : décembre 2008
Messages : 27
Points : 17
Points : 17
Désolé mais cela ne fonctionne pas, déjà sur le chgvar il y a le message "Opérande incorrect ou opérateur manquant dans VALUE" ei si je passe X'22' dans une variable que je concatène dans le chgvar il y un caractère ascii qui s'affiche et non la couleur blanche (Le Balayage (List) du répertoire)
brunodu60 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2009, 15h50   #4
Membre Expert
 
Patrick
Inscription : mai 2008
Messages : 816
Détails du profil
Informations personnelles :
Nom : Patrick
Âge : 41
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : mai 2008
Messages : 816
Points : 1 035
Points : 1 035
Code :
1
2
3
4
5
6
PGM                                                              
DCL        VAR(&ROUGE) TYPE(*CHAR) LEN(1) VALUE(X'28')           
DCL        VAR(&MESS)  TYPE(*CHAR) LEN(100)                      
DCL        VAR(&VERT)  TYPE(*CHAR) LEN(1) VALUE(X'20')           
CHGVAR     VAR(&MESS) VALUE(&ROUGE !! 'Hello World' !! &VERT)    
SNDPGMMSG  MSG(&MESS) MSGTYPE(*INFO)
Voici un CLP et sa commande (glané sur le net) :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SNDCOLMSG: PGM PARM(&MSG &COLOR &MSGTYPE) 

DCL VAR(&MSG) TYPE(*CHAR) LEN(80) 
DCL VAR(&COLOR) TYPE(*CHAR) LEN(1) 
DCL VAR(&MSGTYPE) TYPE(*CHAR) LEN(10) 
DCL VAR(&LASTBYTE) TYPE(*CHAR) LEN(1) VALUE(X'20') 
DCL VAR(&TEXT) TYPE(*CHAR) LEN(82) 

CHGVAR VAR(&TEXT) VALUE(&COLOR *CAT &MSG *TCAT 
&LASTBYTE) 

SNDPGMMSG MSG(&TEXT) TOPGMQ(*EXT) MSGTYPE(&MSGTYPE) 
SNDPGMMSG MSG(&TEXT) MSGTYPE(&MSGTYPE) 

END: ENDPGM
CRTCMD CMD(SNDCOLMSG) PGM(SNDCOLMSGC)




Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
SNDCOLMSG: CMD PROMPT('Send colored message') 

PARM KWD(MSG) TYPE(*CHAR) LEN(80) PROMPT('Message')  +
DFT('Texte de Message Vide')

PARM KWD(COLOR) TYPE(*CHAR) LEN(1) RSTD(*YES) +
DFT(*GREEN) SPCVAL(  +
(*GREEN X'20') + 
(*GREEN_REVERSE X'21')  +
(*WHITE X'22')  +
(*WHITE_REVERSE X'23')  + 
(*GREEN_UNDERSCORE X'24') + 
(*GREEN_UNDERSCORE_REVERSE X'25') + 
(*WHITE_UNDERSCORE X'26') + 
(*RED X'28') + 
(*RED_REVERSE X'29') + 
(*RED_BLINK X'2A')  +
(*RED_REVERSE_BLINK X'2B') + 
(*RED_UNDERSCORE X'2C')  +
(*RED_UNDERSCORE_REVERSE X'2D')  +
(*RED_UNDERSCORE_BLINK X'2E')  +
(*TURQUOISE X'30')  +
(*TURQUOISE_REVERSE X'31')  +
(*YELLOW X'32')  +
(*YELLOW_REVERSE X'33') + 
(*TURQUOISE_UNDERSCORE X'34')  +
(*TURQUOISE_UNDERSCORE_REVERSE X'35') + 
(*YELLOW_UNDERSCORE X'36')  +
(*PINK X'38') + 
(*PINK_REVERSE X'39')  +
(*BLUE X'3A')  +
(*BLUE_REVERSE X'3B') + 
(*PINK_UNDERSCORE X'3C') + 
(*PINK_UNDERSCORE_REVERSE X'3D')  +
(*BLUE_UNDERSCORE X'3E')  +
) PROMPT('Color') 

PARM KWD(MSGTYPE) TYPE(*CHAR) LEN(10) RSTD(*YES) + 
DFT(*INFO) VALUES(*INFO *COMP) + 
PROMPT('Message type')
Puis sndcolmsg msg('Hello World') color(*blue)

Dernière modification par Hédhili Jaïdane ; 30/12/2009 à 18h27. Motif: Quelques rectifs et ajouts
K2R400 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2009, 18h31   #5
Membre Expert
 
Avatar de Hédhili Jaïdane
 
Homme Hédhili Jaïdane
Consultant/Assistant/Formateur/Développeur Indépendant AS/400 Cobol
Inscription : juin 2007
Messages : 1 601
Détails du profil
Informations personnelles :
Nom : Homme Hédhili Jaïdane
Localisation : Tunisie

Informations professionnelles :
Activité : Consultant/Assistant/Formateur/Développeur Indépendant AS/400 Cobol

Informations forums :
Inscription : juin 2007
Messages : 1 601
Points : 2 066
Points : 2 066
Envoyer un message via Skype™ à Hédhili Jaïdane
Bonjour.

Bravo K2R400 pour les exemples, je me suis permis d'apporter quelques rectifs et ajouts par respect à la qualité des exemples.
__________________

Hédhili Jaïdane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2009, 09h48   #6
Futur Membre du Club
 
Inscription : décembre 2008
Messages : 27
Détails du profil
Informations personnelles :
Localisation : France, Oise (Picardie)

Informations forums :
Inscription : décembre 2008
Messages : 27
Points : 17
Points : 17
Merci

le 1er exemple ne fonctionne pas par contre l'exemple avec le CMD est ok. Pourquoi le 1er exemple ne fonctionne pas?
brunodu60 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2009, 11h11   #7
Membre Expert
 
Avatar de Hédhili Jaïdane
 
Homme Hédhili Jaïdane
Consultant/Assistant/Formateur/Développeur Indépendant AS/400 Cobol
Inscription : juin 2007
Messages : 1 601
Détails du profil
Informations personnelles :
Nom : Homme Hédhili Jaïdane
Localisation : Tunisie

Informations professionnelles :
Activité : Consultant/Assistant/Formateur/Développeur Indépendant AS/400 Cobol

Informations forums :
Inscription : juin 2007
Messages : 1 601
Points : 2 066
Points : 2 066
Envoyer un message via Skype™ à Hédhili Jaïdane
Citation:
Envoyé par brunodu60 Voir le message
Merci

le 1er exemple ne fonctionne pas ...
Bonjour.

Testé chez moi et il fonctionne sans problème.
Pour l'exécuter par CALL.

Tu as des erreurs de compilation ou d'exécution ?
__________________

Hédhili Jaïdane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2010, 16h16   #8
Futur Membre du Club
 
Inscription : décembre 2008
Messages : 27
Détails du profil
Informations personnelles :
Localisation : France, Oise (Picardie)

Informations forums :
Inscription : décembre 2008
Messages : 27
Points : 17
Points : 17
quand on met SNDPGMMSG MSG(&MESS) MSGTYPE(*INFO) OK cela fonctionne mais le message est sur l'écran en cours, par contre si je mets SNDPGMMSG MSG(&MESS) TOMSGQ(BRUNO) MSGTYPE(*INFO) le message arrive bien dans la file d'attente mais non en couleur.

Que faut-il faire?
brunodu60 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 04h10.


 
 
 
 
Partenaires

Hébergement Web