I need to change the Color of a multi line message in Opslog from white to Green . The filter criteria of that message is in 2nd line , so MSG.COLOUR is changing the color of only one line in the message instead of entire line.
Could you please advise on this.
Thanks in advance
Here is a possible solution that will use 2 message rules.
1) A MLWTO rule that will intercept the original message:
)MSG xxxxxxx MLWTO )PROC DO I = 1 TO MSG.TEXT.0 MSGSAV.I = MSG.TEXT.I /* HERE COMES THE FILTER YOU WANT */ IF POS('***',MSG.TEXT.I) > 0 THEN REISSUEMSG = 'YES'END IF REISSUEMSG = 'YES' THEN ADDRESS WTO "TEXTVAR("MSGSAV.") MSGID(NEWMSGID)"
The above rule you save each line of the original message and reissue the message as WTO in case it finds the text that matches your filter. Notice that the WTO must be issued under a different message id.
2) The second rule will intercept the new message and change the collor of all lines:
)MSG NEWMSGID)PROC MSG.COLOR = OPSCOLOR('TURQ')
Carlos Mario Filho Principal Support EngineerCA Technologies