[?29h[0"z  UIF320 User Interface Transaction Processor Purpose: This subprogram will take a transaction record (provided by the calling program), call a TDMS request (if one exists) to build a symbol table, read the transaction command file, build a VMS command procedure file (with any parameters substituted with the appropriate values from the symbol table), and exe- cute or submit the command procedure file. It will return the return status of the command procedure which was run or the process which did the submit to the calling program. Options: The subprogram assumes that any transaction name that it re- ceives is legal for the user to run and consequently does no security checking. Logic: 1) Left justify the transaction name we receive from the call- ing program. 2) If there is a request associated with this transaction (i.e., a request resides in the User Interface request library which has the same name as the transaction) call the request repeatedly to build the symbol table; stop when the request sets END-OF-REQUEST to TRUE. 3) Read the transaction file (using UIF_TRANSACTION_DEFAULTS:transaction_name as the file name) and output the command procedure file (using UIF_COMMAND_DEFAULTS:transaction_name as the file name). If the input file is empty or is not present return an error to the calling program. For any lines in the transaction file which contain a tilde ("~") do the following: a) Extract the characters between the tildes. This is a parameter. b) Look up the parameter in the symbol table. If it is not there, return an error to the calling program. c) If the parameter is found in the symbol table substi- tute the value in the symbol table for the parameter. d) If there are more parameters on the line, substitute them using the same procedure. Revised: 15-Feb-85  4) If there is a parameter in the symbol table called TRANSACTION_MODE and it has a value of INTERACTIVE or if there is no parameter called TRANSACTION_MODE then call UTL565 to spawn a subprocess with a command line of "$ @command_filespec", else, call UTL565 with a command line of "$ SUBMIT command_filespec". 5) Return to calling program with the return status which was returned by UTL565. Subprograms: CALL UTL565 USING EXECUTE-LINE, SUBPROCESS-RETURN-STATUS GIVING SUBROUTINE-RETURN-STATUS. Files: None. Display Messages: None. Revised: 15-Feb-85