NET/MASTER Network Control Language (NCL) Programmer's Guide
Sending a Message Between NCL Processes Using the WRITE Verb
Environments and Command Processing
16–54 106160 Tandem Computers Incorporated
After following the steps outlined earlier in this section to install ZEX1620N as your
active MSGPROC procedure, execute ZEX1622N to send a message to your OCS
window. The following screen shows the results of executing the procedure:
(15:12) --------------------- OPERATOR CONTROL SERVICES ----------------------
PROFILE MSGPROC=ZEX1620N
NNM0393 MSGPROC PROCESSING ACTIVATED
NNM0357 PROFILE HAS CHANGED
This message does not have a USERMDO
This message does not have a USERMDO
START ZEX1622N
This message does not have a USERMDO
a b c
This message has a USERMDO mapped by $NCL
&MDO. = . . . x . y . z
&1 is x
&2 is y
&3 is z
NNM1005 START ZEX1622N PROCESSING COMPLETE. NCLID 002564
This message does not have a USERMDO
_____________________________________________________________________________
---------- ------------------ NonStop NET/MASTER D30 ---------------- --------
M=>
Sending MDO Variables You can send an MDO variable between NCL processes by using the MDO operand of
the WRITE verb (with or without additional text). An MDO variable that is sent in a
message is called an enclosed MDO variable. This is because the MDO variable, which
may be mapped by any map, is enclosed by the message, which travels in a data
structure that Mapping Services can interpret using the map $MSG: the MDO variable
travels inside the message.
When an INTREAD verb reads a message containing an enclosed MDO variable, the
whole message is placed in an enclosing MDO variable. (The &$INT. MDO variable
encloses another MDO variable.) The specified text is placed in the &$INT.TEXT
MDO variable. If the DATA operand is not used or specifies a null value, the value of
&$INT.TEXT is null. The enclosed MDO variable, which is mapped by the map you
specify, is placed in the &$INT.USERMDO variable. The name of the map you specify
is placed in the &$INT.MAPNAME MDO variable.
The following WRITE verb sends an enclosed MDO variable mapped by the map
$NCL, and also specifies the DATA operand to send text:
…
&1 = x
&2 = y
&3 = z
ASSIGN MDO=&usermdo. MAP=$NCL FROM ARGS
WRITE NCLID=&nclid MDO=&usermdo. DATA=a b c
…