Special Types of Jobs

The following subsections describe WFL jobs, BDBASE tasks, and MCS sessions, all of which are special types of jobs and entities that resemble jobs.

WFL Jobs

A program written in WFL is usually executed as an independent process. Because of this, the execution of a WFL program is referred to as a WFL job. The TYPE task attribute of a WFL job usually has a value of JOBSTACK.

When a WFL job is submitted from one of the available sources, the system initiates the WFL compiler. (The sources for submitting WFL jobs include START commands in CANDE and MARC sessions, and various statements in programming languages.) The WFL compiler creates the job file for the WFL job.

The job file for a WFL job contains several kinds of information not included in the job file for any other kind of job. In addition to the logging information, a WFL job file includes the following:

  • A copy of the WFL source program.

  • Object code for the job. The job file also serves as the code file for a WFL job.

  • Data specifications used by the job A data specification is a portion of the WFL source program that can be used as an input file by one or more of the offspring of the job.

  • Job restart information.

WFL jobs have several other properties not shared by any other type of process. For details, refer to Tasking from Programming Languages.

BDBASE Tasks

Setting the BDBASE option of the OPTION task attribute causes a task to assume some characteristics of a job. The exact effects of the BDBASE option depend on whether it is assigned before or after initiation of the task. If BDBASE is assigned before task initiation, then the task receives the following joblike characteristics:

  • Its own job file.

  • Ability to produce a job summary.

  • A mix number equal to its job number.

  • “BOJ” and “EOJ” messages.

  • Automatic printing, when the BDBASE task terminates, of any backup files created by the BDBASE task or its descendants. Note that this behavior applies only to backup files whose PRINTDISPOSITION file attribute has the default value of EOJ.

If BDBASE is assigned after task initiation, then its only effect is to cause default printing of backup files when the task terminates. Even if BDBASE is assigned before initiation, it does not make the task into a true job. A BDBASE task differs from a job in the following ways:

  • The BDBASE task usually is not an independent process. (There is no point in setting BDBASE for an independent process, because such a process already has all job capabilities.)

  • The JOBNUMBER value for a descendant of a BDBASE task does not equal the MIXNUMBER of the BDBASE task. Rather, the JOBNUMBER equals the MIXNUMBER of the job at the head of the process family.

  • The MYJOB task variable never refers to a BDBASE task. For details, refer to “MYJOB Task Variable” in this section.

In the past, the main use of the BDBASE option was to cause printer backup files produced by a task to print when the task terminated, rather than being saved until the job terminated. However, other Print System features now enable you to provide the same control over printing, without assigning any other joblike characteristics to the task. For further information, refer to the discussion of printing in Controlling Process I/O Usage.

MCS Sessions

CANDE and MARC sessions have the following job characteristics:

  • Job summaries that are produced at the end of the session and that summarize the activities of all tasks initiated from the session

  • Default printing, when the session ends, of backup files produced by tasks initiated from that session

  • A mix number, also called the session number, that is inherited by the JOBNUMBER task attribute of tasks initiated from the session

However, CANDE and MARC sessions are not really jobs because they are not processes. Each session is merely a dialogue between the user and the CANDE or MARC software. The MYJOB task attribute has a special meaning for tasks initiated from CANDE and MARC sessions. For further information, refer to Access to Ancestral Processes in CANDE and Access to Ancestral Processes in MARC in Tasking from Interactive Sources.