Previous: x/ zmove Up: Miscellaneous Routines Next: x/ zvhost
call xvcmdout(command, status) status = zvcmdout(command);
Sends a command string to TAE to be executed, and returns output values in the interactive parblock, accessible by the x/ zviparm family of routines. The command must be a TAE intrinsic command, or a procedure PDF that uses only intrinsic commands, i.e. no processes, no DCL or shell. This is mainly intended for running VIDS procedures from within a program, but it may have other applications as well.
This routine is quite similar to x/ zvcommand. The only difference is that x/ zvcmdout makes any output variables accessible. This is most useful with the VIDS JGET command, which returns values to the caller in TAE variables. These variables are placed in the interactive parblock.
Arguments:
The command string to execute. It may be a TAE intrinsic command or a procedure PDF which uses intrinsic commands only (this includes almost all VIDS PDF's). All potential outputs from the executed command will be in the form of NAME parameters. The values you wish returned should be declared as local variables in the PDF for the program (the one you're writing, not the one being called). These local variables should then be passed in the COMMAND string as values for the NAME parameters in the executed command. The variables can then be accessed from the interactive parblock via the x/ zviparm family of routines.
The returned status value. It is an argument in Fortran and the function return value in C. Any value other than SUCCESS indicates that the command didn't execute or the outputs didn't get returned correctly, and the returned values should not be used.