SUBROUTINE GETQUALS(quals_line,file) IMPLICIT INTEGER(a-z) parameter CLI$PRESENT_G = '0003FD19'X parameter CLI$PRESENT_L = '0003FD31'X INTEGER*4 icode, CLI$PRESENT, CLI$GET_VALUE, run_lth, end_pos, I INTEGER*4 default, negated, ivalue CHARACTER quals_line*255, quals_input*80, file*255, slash*1 DATA negated /229880/ quals_line = ' ' file = ' ' quals_input = ' ' icode = CLI$PRESENT('BACKUP', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/BACKUP' end if icode = CLI$PRESENT('BEFORE', quals_input) if (icode) then ivalue = CLI$GET_VALUE('BEFORE', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/BEFORE=' // quals_input end if icode = CLI$PRESENT('BY_OWNER', quals_input) if (icode) then ivalue = CLI$GET_VALUE('BY_OWNER', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/BY_OWNER=' // quals_input end if icode = CLI$PRESENT('CREATED', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/CREATED' end if icode = CLI$PRESENT('CONFIRM', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/CONFIRM' end if icode = CLI$PRESENT('CLI', quals_input) if (icode) then ivalue = CLI$GET_VALUE('CLI', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/CLI=' // quals_input end if icode = CLI$PRESENT('CPUTIME', quals_input) if (icode) then ivalue = CLI$GET_VALUE('CPUTIME', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/CPUTIME=' // quals_input end if icode = CLI$PRESENT('EXPIRED', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/EXPIRED' end if icode = CLI$PRESENT('HOLD', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/HOLD' end if icode = CLI$PRESENT('IDENTIFY', quals_input) if (.NOT.icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/NOIDENTIFY' end if !negated icode = CLI$PRESENT('KEEP', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/KEEP' end if icode = CLI$PRESENT('LOG_FILE', quals_input) if (icode) then ivalue = CLI$GET_VALUE('LOG_FILE', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/LOG_FILE=' // quals_input end if !value found. if(icode.EQ.negated) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/NOLOG_FILE' end if !negated. icode = CLI$PRESENT('MODIFIED', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/MODIFIED' end if icode = CLI$PRESENT('NOTIFY', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/NOTIFY' end if icode = CLI$PRESENT('NAME', quals_input) if (icode) then ivalue = CLI$GET_VALUE('NAME', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/NAME=' // quals_input end if icode = CLI$PRESENT('PRINTER', quals_input) if (icode) then ivalue = CLI$GET_VALUE('PRINTER', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/PRINTER=' // quals_input end if if(icode.EQ.negated) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/NOPRINTER' end if !negated check. icode = CLI$PRESENT('PRIORITY', quals_input) if (icode) then ivalue = CLI$GET_VALUE('PRIORITY', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/PRIORITY=' // quals_input end if icode = CLI$PRESENT('QUEUE', quals_input) if (icode) then ivalue = CLI$GET_VALUE('QUEUE', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/QUEUE=' // quals_input end if icode = CLI$PRESENT('RECORD_SIZE', quals_input) if (icode) then ivalue = CLI$GET_VALUE('RECORD_SIZE', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/RECORD_SIZE=' // quals_input end if icode = CLI$PRESENT('RESTART', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/RESTART' end if icode = CLI$PRESENT('SINCE', quals_input) if (icode) then ivalue = CLI$GET_VALUE('SINCE', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/SINCE=' // quals_input end if C icode = CLI$PRESENT('SNA', quals_input) C if (icode) then C ivalue = CLI$GET_VALUE('SNA', quals_input) C ivalue = STR$TRIM(quals_line,quals_line,end_pos) C quals_line = quals_line(1:end_pos) // '/SNA=' // quals_input C end if icode = CLI$PRESENT('TAB', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/TAB' end if icode = CLI$PRESENT('WSEXTENT', quals_input) if (icode) then ivalue = CLI$GET_VALUE('WSEXTENT', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/WSEXTENT=' // quals_input end if C icode = CLI$PRESENT('TRANSLATE', quals_input) C if (icode) then C ivalue = CLI$GET_VALUE('TRANSLATE', quals_input) C ivalue = STR$TRIM(quals_input,quals_input,end_pos) C if (quals_input .eq. ' ') then C ivalue = STR$TRIM(quals_line,quals_line,end_pos) C quals_line = quals_line(1:end_pos) // '/TRANSLATE=' // quals_input C else C ivalue = STR$TRIM(quals_line,quals_line,end_pos) C quals_line = quals_line(1:end_pos) // '/TRANSLATE' // quals_input C end if C end if icode = CLI$PRESENT('USER', quals_input) if (icode) then ivalue = CLI$GET_VALUE('USER', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/USER=' // quals_input end if icode = CLI$PRESENT('WSDEFAULT', quals_input) if (icode) then ivalue = CLI$GET_VALUE('WSDEFAULT', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/WSDEFAULT=' // quals_input end if icode = CLI$PRESENT('WSQUOTA', quals_input) if (icode) then ivalue = CLI$GET_VALUE('WSQUOTA', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/WSQUOTA=' // quals_input end if icode = CLI$PRESENT('DELETE', quals_input) if (icode) then ivalue = CLI$GET_VALUE('DELETE', quals_input) ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/DELETE' // quals_input end if icode = CLI$PRESENT('CHARACTERISTICS', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/PARAMETERS="' do while (CLI$GET_VALUE('CHARACTERISTICS', quals_input)) ivalue = STR$TRIM(quals_line,quals_line,end_pos) c end_pos = end_pos - 1 c if (end_pos.LE.0) end_pos = 1 quals_line = quals_line(1:end_pos) // quals_input // ',' enddo ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '"' end if !CHARACTERISTICS qualifier check. icode = CLI$PRESENT('EXCLUDE', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/PARAMETERS="' do while (CLI$GET_VALUE('EXCLUDE', quals_input)) ivalue = STR$TRIM(quals_line,quals_line,end_pos) c end_pos = end_pos - 1 c if (end_pos.LE.0) end_pos = 1 quals_line = quals_line(1:end_pos) // quals_input // ',' enddo ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '"' end if !EXCLUDE qualifier check. icode = CLI$PRESENT('PARAMETERS', quals_input) if (icode) then ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '/PARAMETERS="' do while (CLI$GET_VALUE('PARAMETERS', quals_input)) ivalue = STR$TRIM(quals_line,quals_line,end_pos) c end_pos = end_pos - 1 c if (end_pos.LE.0) end_pos = 1 quals_line = quals_line(1:end_pos) // quals_input // ',' enddo ivalue = STR$TRIM(quals_line,quals_line,end_pos) quals_line = quals_line(1:end_pos) // '"' end if !PARAMETERS qualifier check. icode = CLI$PRESENT('P1', quals_input) if (icode) then do while (CLI$GET_VALUE('P1', quals_input)) ivalue = STR$TRIM(file,file,end_pos) c end_pos = end_pos - 1 c if(end_pos.LE.0) end_pos = 1 file = file(1:end_pos) // quals_input ivalue = STR$TRIM(file,file,end_pos) c end_pos = end_pos - 1 file = file(1:end_pos) // ',' enddo ivalue = STR$TRIM(file,file,end_pos) end_pos = end_pos - 1 file = file(1:end_pos) end if !FILE check. return end