Use the CNMCMD service routine to run a NetView® command from an HLL command processor. If
the called command is a long-running command, the caller is suspended
until the long-running command is completed. The caller regains control at the instruction
following the CNMCMD invocation.
The CNMCMD routine syntax follows:
PL/I CALL FORMAT:
CALL CNMCMD(hlbptr,cmdstr)
PL/I MACRO FORMAT:
CNMCOMMAND DATA(cmdstr)
C INVOCATION:
void Cnmcmd(void *cmdstr)
Where:
cmdstr
A varying length character field containing the NetView command (including its
parameters) to be run.
hlbptr
A 4-byte pointer field containing the address of the HLB control
block.
Usage Notes:
Commands are started with a HDRMTYPE of HDRTYPEC. This type is consistent with the NetView command list language
and REXX™.
The return code from HLL command processors and NetView long-running commands
is returned properly to HLL command processors through the CNMCMD
interface. If you wish to call a long-running command and have it
be separately rollable, you can prefix the command with CMD HIGH.
For example, CNMCOMMAND DATA ('CMD HIGH BROWSE NETLOGA') enables
the BROWSE panel to roll independently from the calling HLL command
processor. Refer to the NetView online
help for more information about the CMD command.
CNMCMD does not process immediate commands (type=I in DSIPARM
member CNMCMD).
A negative return code generated from CNMCMD indicates a failure
in the CNMCMD service routine, whereas a positive return code generated
from CNMCMD indicates a failure in the NetView command that was to be run by CNMCMD. A
-5 return code generated from CNMCMD indicates that the NetView command this is running
was cancelled. In this case, the command processor does any necessary
cleanup and sets the exit HLBRC to -5 to pass the RESET information
to its caller.
A -1 return code generated from CNMCMD indicates an unexpected
error in the called command procedure.
You cannot invoke CNMCMD from an HLL installation exit routine
or from an HLL command processor while holding a lock.
The NetView service
point command service (SPCS) commands are not supported under the
HLL API and must not be started by CNMCMD. Refer to the NetView online help for a list
of SPCS commands.
Return Codes:
Return Code Name
Value
Description
CNM_GOOD
0
Everything is OK.
-CNM_BAD_INVOCATION
-4
Not started from a command processor.
-CNM_NO_STORAGE
-24
Nonzero return code from DSIGET macro.
-CNM_BAD_LENGTH
-88
Command length is not valid.
-CNM_LOCKED
-208
CNMCMD issued while holding a lock.
X-CNM_BAD_EXCMS
X-3000
Nonzero return code X. See values for X that follow.
Z
Return code from a command. See CNMCMD usage notes for return
codes -5 and -1.
Values for X
Return Code Value for X
Description
-4
Nonzero return code, 4 (drop), from installation exit.
-100-Y
Nonzero return code, Y, from DSICES macro.
-200-Y
Nonzero return code, Y, from DSILCS (CWB) macro.
-300-Y
Nonzero return code, Y, from DSIGET macro.
-400-Y
Nonzero return code, Y, from DSIPRS macro.
-500-Y
Nonzero return code, Y, from either DSIGET or DSILCS indicates
storage failure.
-600-Y
Nonzero return code, Y, from DSILCS (SWB) macro.
Refer to IBM Tivoli NetView for z/OS Programming: Assembler for more information.