TS/MP Management Programming Manual (G06.24+, H06.03+)

SPI Programming Considerations
NonStop TS/MP Management Programming Manual540082-001
3-15
Considerations for SSINIT
6. Send the command message using the mechanism appropriate to your
programming language (for example, a WRITEREAD call in TAL, a READ WITH
PROMPT verb in COBOL, or a #INPUTV or #OUTPUTV built-in function in TACL).
Considerations for SSINIT
When setting up a call to SSINIT, you need to consider this information.
Using ZSPI-TKN-MAXRESP
ZSPI-TKN-MAXRESP is used by some subsystems to enable multiple responses in a
single response buffer. Because the Pathway subsystem does not support multiple
responses in a single response buffer, ZSPI-TKN-MAXRESP is only useful if your
management application must handle all subsystems in a consistent manner; that is, if
Pathway responses must be enclosed in data lists. To reference the Pathway
subsystem alone, it is not necessary to specify ZSPI-TKN-MAXRESP.
You can include ZSPI-TKN-MAXRESP by using SSINIT or SSPUT. If you do not
include this token in the command message or you include it but set the value to zero,
the PATHMON process returns a single response. If you include ZSPI-TKN-MAXRESP
and assign a nonzero value, the PATHMON process returns a single response and
encloses that response in a data list. (The ZSPI-TKN-DATALIST token precedes the
response, and the ZSPI-TKN-ENDLIST token follows the response.)
Declaring the Pathway Subsystem ID
The Pathway subsystem ID is expressed by the value ZPWY-VAL-SSID, defined in
Section 4, SPI and EMS Standard Definitions.
These declarations produce an appropriately initialized structure for COBOL. For TAL,
TACL, and C, your program must initialize the structure explicitly. For example:
For TAL:
ZPWY^VAL^SSID.Z^OWNER.Z^B ':=' [ ZSPI^VAL^TANDEM ];
ZPWY^VAL^SSID.Z^NUMBER := ZSPI^SSN^ZPWY;
ZPWY^VAL^SSID.Z^VERSION := ZPWY^VAL^VERSION;
Note. Always initialize an extensible structured token that is to appear in a command by using
the SPI procedure SSNULL. This procedure ensures that every field of the token is initialized
to its null value. Initializing each field to a null value is important because an operation will be
performed if a field contains a value other than its null value. For example, in the ALTER TCP
command, if a field of the extensible structured token that describes the TCP attributes
contains a value other than its null value, that value is assigned to the attribute corresponding
to that field.
Using SSNULL is important even when your application assigns a value to every field of an
extensible structured token. Otherwise, the application will not work correctly later if it is
compiled with a new version of the definition files that add new fields to the token.