Added to repository.
This commit is contained in:
82
mutrack/com/SUB_LIST.COM
Normal file
82
mutrack/com/SUB_LIST.COM
Normal file
@ -0,0 +1,82 @@
|
||||
$!==============================================================================
|
||||
$! KOMMANDOPROZEDUR FUER DAS SUBMITTEN VON 'INPUTFILE-LISTEN' VON MUTRACK UND
|
||||
$! ACCEL MITTELS 'SUBMULISTn' BZW. 'SUBACLISTn'.
|
||||
$!==============================================================================
|
||||
$! 1. LOESCHE GEGEBENENFALLS DAS .MESSAGE FILE
|
||||
$! 2. IN DER SCHLEIFE: VERSUCHE DAS .MESSAGE-FILE ZU OEFFNEN
|
||||
$! 3. GELINGT DIES NICHT, SO WURDE DIE KOMMANDOPROZEDUR GERADE ERST GESTARTET.
|
||||
$! EIN PROGRAMMDURCHLAUF WIRD DANN AUF JEDEN FALL PORBIERT.
|
||||
$! 4. LIES BEI NEUEM VERSUCH ERST DIE NUMMER DES ZULETZT ABGEARBEITETEN INPUT-
|
||||
$! FILES. IST DIESE = 1, SO LOESCHE DAS .MESSAGE FILE UND BEENDE PROZEDUR
|
||||
$!==============================================================================
|
||||
$! P1 = KUERZEL DES PROGRAMMES = "MU" bzw. "AC"
|
||||
$! P2 = PROGRAMMAUFRUF = "MUTRACK" bzw. "ACCEL"
|
||||
$! P3 = QUEUE
|
||||
$! P4 = NUMMER DER INPUTLISTE (WAHRSCHEINLICH AUF 1-9 EINGESCHRAENKT)
|
||||
$! P5 = QUEUE-ENTRY, AUF DEN SYNCHRONISIERT WERDEN SOLL
|
||||
$!==============================================================================
|
||||
$! Definition der Filenamen:
|
||||
$ INPUTLISTNAME = "LIST''P4'"
|
||||
$ COMFILENAME = "SYS$SCRATCH:'P1'_LIST'P4'.COM"
|
||||
$ MESSFILENAME = "SYS$SCRATCH:''P1'_LIST''P4'.MESSAGE"
|
||||
$!
|
||||
$! Oeffnen des files fuer die zu submittende Kommandoprozedur:
|
||||
$ FILE = F$SEARCH("''COMFILENAME'")
|
||||
$ IF FILE .NES. "" THEN DELETE 'COMFILENAME'.* /NOCON
|
||||
$ OPEN /WRITE comfile 'COMFILENAME'
|
||||
$ OUT := WRITE COMFILE
|
||||
$!
|
||||
$! Erstellen der zu submittenden Kommandoprozedur:
|
||||
$ OUT "$! DIESE KOMMANDOPROZEDUR WURDE DURCH 'SUB_LIST.COM' ERSTELLT UND WIRD
|
||||
$ OUT "$! NUR TEMPORAER BENOETIGT, BIS DER DURCH ""$ SUB''P1'LIST ''P4'"" GESTARTETE
|
||||
$ OUT "$! BATCHJOB ABGEARBEITET IST. BEI NORMALEM ENDE DES BATCHJOBS WIRD DIESES
|
||||
$ OUT "$! FILE ZUM SCHLUSS GELOESCHT!"
|
||||
$ OUT "$!=============================================================================
|
||||
$ OUT "$ SET NOON
|
||||
$ OUT "$!
|
||||
$ IF P5 .NES. ""
|
||||
$ THEN
|
||||
$ OUT "$ SYNCHRONIZE /ENTRY = ''P5'
|
||||
$ OUT "$!
|
||||
$ ENDIF
|
||||
$ OUT "$ DEFINE/NOLOG INPUTLISTNAME ''INPUTLISTNAME'"
|
||||
$ OUT "$! in case a privious submitted batchjob didn't end properly:
|
||||
$ OUT "$ FILE = F$SEARCH(""''MESSFILENAME'"")
|
||||
$ OUT "$ IF FILE .NES. """" THEN DELETE ''MESSFILENAME'.* /NOCON
|
||||
$ OUT "$!
|
||||
$ OUT "$ FIRSTTIME = ""TRUE""
|
||||
$ OUT "$ LOOP_START:
|
||||
$ OUT "$ OPEN /SHARE /READ /ERROR=OPEN_ERROR messagefile ''MESSFILENAME'
|
||||
$ OUT "$ READ messagefile FILENR
|
||||
$ OUT "$ CLOSE messagefile
|
||||
$ OUT "$ IF (FILENR.EQ.1) THEN GOTO FINISH
|
||||
$ OUT "$!
|
||||
$ OUT "$ PROG_CALL:
|
||||
$ OUT "$ ''P2'
|
||||
$ OUT "$ GOTO LOOP_START
|
||||
$ OUT "$!
|
||||
$ OUT "$ FINISH:
|
||||
$ OUT "$ FILE = F$SEARCH(""''MESSFILENAME'"")
|
||||
$ OUT "$ IF FILE .NES. """" THEN DELETE ''MESSFILENAME'.* /NOCON
|
||||
$ OUT "$ WRITE SYS$OUTPUT ""''P1'_LIST''P4' FINISHED PROPERLY""
|
||||
$ OUT "$ EXIT
|
||||
$ OUT "$!
|
||||
$ OUT "$!------------------------------------------------------------------------------
|
||||
$ OUT "$ OPEN_ERROR:
|
||||
$ OUT "$ IF (FIRSTTIME.EQS.""TRUE"")
|
||||
$ OUT "$ THEN
|
||||
$ OUT "$ FIRSTTIME = ""FALSE""
|
||||
$ OUT "$ GOTO PROG_CALL
|
||||
$ OUT "$ ELSE
|
||||
$ OUT "$! in spite of the program has already been run there is no .MESSAGE file
|
||||
$ OUT "$! => all input files have already been done => exit
|
||||
$ OUT "$ GOTO FINISH
|
||||
$ OUT "$ ENDIF
|
||||
$ OUT "$!------------------------------------------------------------------------------
|
||||
$ CLOSE COMFILE
|
||||
$!
|
||||
$! Submitten der Kommandoprozedur:
|
||||
$ SUBMIT/DELETE/NOTIFY/NOPRINT/QUEUE='P3'/NAME='P1'LIST'P4' -
|
||||
/LOG_FILE='P2'$OUTdirectory 'COMFILENAME'
|
||||
$!
|
||||
$ EXIT
|
Reference in New Issue
Block a user