Problem solve Get help with specific problems with your technologies, process and projects.

To give error messages with COLOR based on severity

If you would like to give error messages with COLOR based on severity, use the HexaDecimal color codes to send...

Colored Error messages. You can change the program to send messages with different colors based on severity.


 
 PGM        PARM(&MSGID)                                   
 DCL        VAR(&MSG) TYPE(*CHAR) LEN(78)                  
 DCL        VAR(&MSGID) TYPE(*CHAR) LEN(7)                 
 DCL        VAR(&SEV) TYPE(*DEC) LEN(2)                    
 DCL        VAR(&MSGDTA) TYPE(*CHAR) LEN(78)               
 DCL        VAR(&BLUE) TYPE(*CHAR) LEN(1) VALUE(X'3A')     
 DCL        VAR(&WHITE) TYPE(*CHAR) LEN(1) VALUE(X'22')    
 DCL        VAR(&RED) TYPE(*CHAR) LEN(1) VALUE(X'28')      
 DCL        VAR(&GREEN) TYPE(*CHAR) LEN(1) VALUE(X'40')    
 DCL        VAR(&PINK) TYPE(*CHAR) LEN(1) VALUE(X'38')     
 DCL        VAR(&TURQ) TYPE(*CHAR) LEN(1) VALUE(X'30')     
 DCL        VAR(&YELL) TYPE(*CHAR) LEN(1) VALUE(X'32')     
 DCL        VAR(&RIMG) TYPE(*CHAR) LEN(1) VALUE(X'21')     
 DCL        VAR(&UNDER) TYPE(*CHAR) LEN(1) VALUE(X'24')    
 DCL        VAR(&DELIM) TYPE(*CHAR) LEN(1) VALUE(X'20')    
 DCL        VAR(&COLOR) TYPE(*CHAR) LEN(1)                 
                                                           
 RTVMSG     MSGID(&MSGID) MSGF(QCPFMSG) MSG(&MSG) SEV(&SEV)
                                                           
 IF         COND(&SEV = 00) THEN(CHGVAR VAR(&COLOR) +      
              VALUE(&WHITE))                             
                                                         
 IF         COND(&SEV > 00) THEN(CHGVAR VAR(&COLOR) +    
              VALUE(&PINK))                              
                                                         
 IF         COND(&SEV >= 30) THEN(CHGVAR VAR(&COLOR) +   
              VALUE(&YELL))                              
                                                         
 IF         COND(&SEV >= 60) THEN(CHGVAR VAR(&COLOR) +   
              VALUE(&RED))                               
                                                         
 CHGVAR     VAR(&MSGDTA) VALUE(' ' *CAT &COLOR *CAT &MSG)
 CHGVAR     VAR(&MSGDTA) VALUE(&MSGDTA *TCAT &DELIM)     
                                                         
 SNDPGMMSG  MSG(&MSGDTA)                                 
 ENDPGM

Dig Deeper on RPG iSeries programming

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.

-ADS BY GOOGLE

SearchDataCenter

Close