Advanced job examples
The following examples illustrate some situations where advanced job interaction can be used. While reading these descriptions, see if they apply to a job scheduling challenge you may have in your job set. You can most likely use the advanced job interaction tools to solve this challenge.
- Job switching - One advanced job technique is to switch between jobs by setting a variable that determines "if the variable is A then run these jobs, if the variable is B then run these other jobs". This type of job switching is useful for a jobs that need to be run in certain situations that may be unpredictable. However, variables can be used for a number of other purposes in addition to these.
- Reservation system - A reservation system is a powerful tool that let's you determine whether the job will run based on the value of an integer. For instance, suppose you have a limited amount of disk space and your jobs require the use of a certain amount of disk space. You can assign each job a variable in the form of an integer and then subtract that integer from a total available disk space integer. When the maximum disk space available is used up, job will be queues up using a simple IF-THEN construct.
- Job intersection - The intersection method is especially useful where you only want a single job to run at a time. Suppose you have a job set that updates a database using a number of jobs. However, the database can only be opened and updated by one job at a time. Using the job intersection method, the jobs can be set up to run exclusive of each other by setting a variable that prevents other jobs from running whenever a job executes. This can be done using variable assignments and IF-THEN constructs.
- Shut off valve - The shut off valve is a way to turn off all or some of the jobs in a job run by manually setting a variable to off. By inserting the line
IF valve .eqs. off THEN SUPPRESS_RUN
into each of the jobs in a run, you can manually turn off all the jobs for as long as you want by changing the variable to off. When you want to run the jobs again, simply change the variable to anything but off.
- Status variables - A status can be displayed using variables which change in the layout. Every time a variable is changed all monitor displays are notified and the display updated.