The TRANSVV macro is used by a client to carry out a variable transmission via the specified S variable stream to the server that is currently assigned (ASSIGN-STREAM command). TRANSVV is functionally equivalent to the TRANSMIT-BY-STREAM command. TRANSVV can only use S variable streams that were assigned at the same procedural hierarchy level at which the program was started.
Operation | Operands |
TRANSVV | MF = E ,PARAM = <name 1..8> / (<integer 1..15>) |
MF = D [,PREFIX = T / prefix] | |
MF = C [,PREFIX = T / prefix] [,MACID = RAN / macid] | |
MF = L/M ,STREAM = <name 1..20> [,VNAME = *NONE / <name 1..8> / (integer 1..15)] [,VNAMEL = <integer 1..255>] [,VSCOPE = *VISIBLE / *TASKONLY ] [,RNAME = *SAME / *NONE / <name 1..8> / (integer 1..15)] [,RNAMEL = <integer 1..255>] [,RSCOPE = *VISIBLE / *TASKONLY ] [,CNAME = *NONE / <name 1..8> / (integer 1..15)] [,CNAMEL = <integer 1..255>] [,CSCOPE = *VISIBLE / *TASKONLY ] [,RCNAME = *SAME / *NONE / <name 1..8> / (integer 1..15)] [,RCNAMEL = <integer 1..255>] [,RCSCOPE = *VISIBLE / *TASKONLY] |
Operands
MF = E
Execute format of the macro call; generates an SVC.
PARAM
Designates the address of the operand list that is evaluated for the macro call (address of macro call with MF = L).
= <name 1..8>
Designates the symbolic address of the operand list.
= (<integer 1..15>)
Designates the register that contains the address of the operand list.
MF = D
DSECT format of the macro call; generates a DSECT for the operand list. Each field has its own name plus additional equates where explanations are required.
PREFIX = T / prefix
Defines the first character of the generated names.
Default: the generated names begin with the letter T.
MF = C
C format of the macro call; generates the data area (operand list) only. Each field has its own name plus additional equates where explanations are required. The standard header must be initialized by the user.
PREFIX = T / prefix
Defines the first character of the generated names.
Default: the generated names begin with the letter T.
MACID = RAN / macid
Defines the second, third and fourth character of the field names; default: RAN.
MF = L / M
List format of the macro call; generates the operand list for the macro call with MF = E (Execute format); the macro call must be addressable by means of a symbolic address.
STREAM = <name 1..20>
Name of the S variable stream into which the variable is transmitted.
VNAME
Name of the S variable which is to be transmitted to the server.
= *NONE
No S variable is transmitted.
= <name 1..8>
Address of the field which contains the name of the S variable.
= (<integer 1..15>)
Register with the address of the field that contains the name of the S variable (the register number must be enclosed in parentheses).
VNAMEL = <integer 1..255>
Specifies the length of the variable name which was specified by the caller.
VSCOPE
Defines the scope of the variable.
= *VISIBLE
The variable is created as a procedure-local variable.
= *TASKONLY
The variable is created as a task-global variable.
The following are permissible combinations:
VNAME=*NONE VSCOPE=*VISIBLE
or:
VSCOPE=*VISIBLE / *TASKONLY, VNAME =<name 1..8> / (integer 1..15), VNAMEL=<integer 1..255>
RNAME
The S variable or return variable which is sent back by the transmission.
= *SAME
The values of VNAME, VNAMEL and VSCOPE are retained.
= *NONE
No return variable is sent back.
= <name 1..8>
Address of the field which contains the name of the return variable.
= (<integer 1..15>)
Register with the address of the field that contains the name of the return variable (the register number must be enclosed in parentheses).
RNAMEL = <integer 1..255>
Specifies the length of the variable name which was specified by the caller.
RSCOPE = *VISIBLE / *TASKONLY
Defines the pool or container for the return variables.
= *VISIBLE
The return variable is created as a procedure-local variable.
= *TASKONLY
The return variable is created as a task-global variable.
The following are permissible combinations:
RNAME=*NONE
or:
RSCOPE=*VISIBLE / *TASKONLY, RNAME =<name 1..8> / (integer 1..15), RNAMEL=<integer 1..255>
CNAME
Control variable sent with the transmission.
= *NONE
No control variable is transmitted. This may be specified as either another variable or a register number (which must be enclosed in parentheses).
= <name 1..8>
Address of the field which contains the name of the control variable.
= (<integer 1..15>)
Register with the address of the field that contains the name of the control variable (the register number must be enclosed in parentheses).
CNAMEL = <integer 1..255>
Specifies the length of the control variable name which was specified by the caller.
CSCOPE
Defines the pool or container for the control variables.
= *VISIBLE
The control variable is created as a procedure-local variable.
= *TASKONLY
The control variable is created as a task-global variable.
The following are permissible combinations:
CNAME=*NONE CSCOPE=*VISIBLE / *TASKONLY CNAME =<name 1..8> / (integer 1..15), CNAMEL=<integer 1..255>
RCNAME
The control variable or return control variable which is sent back by the transmission.
= *SAME
The values of CNAME, CNAMEL and CSCOPE are retained.
= *NONE
No return control variable is transmitted.
= <name 1..8>
Address of the field which contains the name of the return control variable.
= (<integer 1..15>)
Register with the address of the field that contains the name of the return control variable (the register number must be enclosed in parentheses).
RNAMEL = <integer 1..255>
Specifies the length of the return control variable name which was specified by the caller.
RCSCOPE
Defines the pool or container for the return control variables.
= *VISIBLE
The return control variable is created as a procedure-local variable.
= *TASKONLY
The return control variable is created as a task-global variable.
The following are permissible combinations:
RCNAME=*NONE RCSCOPE=*VISIBLE / *TASKONLY RCNAME =<name 1..8> / (integer 1..15), RCNAMEL=<integer 1..255>
The table below lists the return codes in hexadecimal notation.
Return codes
Subcode2 | Subcode1 | Maincode | Meaning |
00 | 00 | 0000 | Transmission successfully completed; no error |
01 | 00 | 0000 | Variable stream was assigned to *DUMMY, no transmission |
00 | 01 | 0001 | Parameter error |
00 | 40 | 0002 | Specified variable stream is incomplete |
00 | 40 | 0003 | Specified variable is incomplete |
00 | 40 | 0004 | RET-SSTA too small (for developers only) |
00 | 01 | 0005 | The data items transmitted (user or control data) do not have a format compatible with one the server can process |
00 | 40 | 0006 | Error message from the server; saved in RCNAME (if specified) |
02 | 00 | 0007 | Warning from the server; saved in RCNAME (if specified) |
02 | 00 | 0008 | Variable stream reset to *DUMMY; server is no longer active |
00 | 20 | 0009 | System error |
00 | 20 | 000A | Error during server connection |
00 | 01 | FFFF | Unknown unit or function number |
00 | 02 | FFFF | Function is not available |
00 | 03 | FFFF | Wrong version of the operand list |
00 | 41 | FFFF | SDF-P is not loaded |
00 | 81 | FFFF | SDF-P no longer working |