1$ ! 2$ ! Deal with requests for UUXQT 3$ ! 4$ set noon 5$ set proc/prio=4 6$ set prot=w:re/default 7$ ! 8$ UUXQT_DIR = "e$disk:[eunice.usr.lib.uucp]" 9$ UUXQT_EXECUTE_DIR = "e$disk:[eunice.usr.spool.uucp]" 10$ UUXQT_QUEUE = "SYS$SPECIAL" 11$ UUXQT_RESUBMIT_PERIOD = "TOMORROW" 12$ uuxqt:==$'UUXQT_DIR'uuxqt uuxqt 13$ ! 14$ ! If there is a problem go tell the Boss 15$ on error then $ goto error_mail 16$ ! 17$ ! Delete JOBID file (means JOB running) 18$ delete 'UUXQT_DIR'uuxqt.jid;* 19$ UUXQT_Command:="" 20$ UUXQT_CMD_FILE = F$SEARCH(UUXQT_DIR + "uuxqt.dat;*") 21$ open/read/error=NO_COMMAND_FILE cmd_file 'UUXQT_DIR'uuxqt.dat 22$ read cmd_file UUXQT_Command /end=EMPTY_COMMAND_FILE 23$EMPTY_COMMAND_FILE: 24$ close cmd_file 25$ ! 26$ ! Delete all UUXQT command files 27$ UUXQT_CMD_FILES = UUXQT_CMD_FILE - F$PARSE(UUXQT_CMD_FILE,,,"VERSION") + ";*" 28$ delete 'UUXQT_CMD_FILES' 29$ ! 30$ NO_COMMAND_FILE: 31$ assign nla0: sys$print ! Keep those log file coming in !!???!! 32$ set default 'UUXQT_EXECUTE_DIR' 33$ uuxqt 'UUXQT_Command' !Run UUXQT 34$ status = $status 35$ goto resubmit 36 37$error_mail: 38$ set noon ! Push through regardless... 39$ count = 0 40$ subject = "" 41$mail_error: 42$ on error then $ goto mail_error 43$ set noon 44$ if count .gt. 10 then $ exit %X114 45$ status = $STATUS 46$ subject = subject + F$LOG("SYS$NODE") 47$ subject = subject + "UUXQT error: " + F$STRING(STATUS) 48$ subject = subject + " = " 49$ subject = subject + F$MESSAGE(STATUS) 50$ subject = subject + " " + UUXQT_COMMAND 51$ dis_list = UUXQT_DIR + "Disaster.DIS" 52$ dis_list = F$PARSE(dis_list) 53$ if dis_list .eqs. "" then $ dis_list = "SYSTEM" 54$ dis_list = F$SEARCH(dis_list) 55$ if dis_list .eqs. "" then $ dis_list = "SYSTEM" 56$ if F$LOCATE(".DIS",DIS_LIST) .lt. F$LENGTH(DIS_LIST) then - 57 $ dis_list = "@" + dis_list 58$ MAIL NL: "''DIS_LIST'" /Subject="''subject'" 59$ if .not. $status then $ MAIL nl: SYSTEM - 60 /subject="UUXQT error mailing error ''STATUS' / ''$status'" 61$ ! 62$resubmit: 63$ if status then $ purge sys$login:uuxqt.log/keep=2 64$ uuxqt_command = "submit" 65$ ! Submit the job again later (Delta = defined above) 66$ assign 'UUXQT_DIR'uuxqt.jid sys$output 67$ submit 'UUXQT_DIR'uuxqt - 68 /after="''UUXQT_RESUBMIT_PERIOD'" - 69 /queue='UUXQT_QUEUE' /keep/NOPRINT 70$ status = $status 71$ deassign sys$output 72$ ! 73$ if status then $ exit 74$ if count .gt. 3 then $ exit 75$ count = count + 1 76$ subject = "Requeue Error:" 77$ goto mail_error 78$ exit 79