NET/MASTER Network Control Language (NCL) Programmer's Guide
The Structure of Mapped Data Object (MDO) Variables
Working With Mapping Services
10–24 106160 Tandem Computers Incorporated
The following MSGPROC NCL procedure reads a message, assigns values to fields in
an element that can be repeated, and displays the modified message on an OCS
window:
zex1009n: PROCEDURE
 /* MSGPROC procedure to display fields */
 DO FOREVER
 MSGREAD VARS=&word*
 IF &word1 = "TEST" THEN DO
 &$msg.msgattr.fld{1}.offset = 8
 &$msg.msgattr.fld{1}.length = 8
 &$msg.msgattr.fld{1}.color = "TURQUOISE"
 &$msg.msgattr.fld{1}.hlite = "BLINK"
 &$msg.msgattr.fld{1}.intens = "HIGH"
 &$msg.msgattr.fld{2}.offset = 17
 &$msg.msgattr.fld{2}.length = 7
 &$msg.msgattr.fld{2}.color = "BLUE"
 &$msg.msgattr.fld{2}.hlite = "NONE"
 &$msg.msgattr.fld{2}.intens = "NORMAL"
 SAY "&$MSG.TEXT is "&$msg.text
 SAY "&$MSG.MSGATTR.DISPLAY.COLOR is "&$msg.msgattr.display.color
 SAY "&$MSG.MSGATTR.DISPLAY.HLITE is "&$msg.msgattr.display.hlite
 SAY "&$MSG.MSGATTR.DISPLAY.INTENS is "&$msg.msgattr.display.intens
 DO &i = 1 TO 2
 SAY "&$MSG.MSGATTR.FLD{"&i"}.OFFSET is "&$msg.msgattr.fld{&i}.offset
 SAY "&$MSG.MSGATTR.FLD{"&i"}.LENGTH is "&$msg.msgattr.fld{&i}.length
 SAY "&$MSG.MSGATTR.FLD{"&i"}.COLOR is "&$msg.msgattr.fld{&i}.color
 SAY "&$MSG.MSGATTR.FLD{"&i"}.HLITE is "&$msg.msgattr.fld{&i}.hlite
 SAY "&$MSG.MSGATTR.FLD{"&i"}.INTENS is "&$msg.msgattr.fld{&i}.intens
 END
 SAY "&$MSG.MSGATTR.ALARM is "&$msg.msgattr.alarm
 SAY "&$MSG.SOURCE.TIME is "&$msg.source.time
 SAY "&$MSG.SOURCE.USER is "&$msg.source.user
 MSGCONT
 END
 ELSE
 MSGCONT
 END
END zex1009n
The NCL procedure uses a DO loop to display the elements that are repeated—two in
this example—using a variable as the integer index.










