A function (or function chain) can be executed in batch by modifying the $SPOOL entry for the function.

The fields that govern the batch processing parameters are Queue No. and Priority.

When a function to be submitted in batch is called, the calling session does not execute the function.  It calls another function, WRITEQUE.  WRITEQUE adds a record in the BATCHQUE.PRO file of the PRODATA logical database.

After adding the record to BATCHQUE.PRO, the READQUE function makes a system call with the OS command 'pro QUEn>BATCHn.out' (where n is the Queue No).

QUEn>BATCHn.out starts another instance of the PROIV Virtual Machine that executes the function and, upon completion, ends the instance of the kernel.  If another job is pending in the queue, BATCHQUE.PRO, READQUE executes it also.  (Batch jobs may be left in BATCHQUE as a result of system crashes, etc.)

The batch execution, under Unix, sends all screen output to batchn.out (where n is the queue number).

The status of a pending batch job can be viewed using the $BQUE function.

Comment on this topic

Topic ID: 750059