Understanding Job Contexts

As jobs progress from submission through print completion multiple contexts of that job are spawned within the PrintOS Jobs application.

In a simple configuration a Job will be submitted to a DFE, that job will route to a single Press, and a Print Run will be printed.  This results in a job with a single DFE context, Press context and Print Run context.

Simple Job Hierarchy:

However, due to the potentially complex nature of DFEs and presses there is not always a 1 to 1 relationship between these job contexts.  For example:

  • A single DFE job can be copied and routed to multiple presses.  This will create multiple press contexts for a single DFE job. This can also lead to situations where a press job does not have a parent DFE job.
  • A single Press job can be re-printed, proof prints created, or prints interupted (e.g. paper jam or press operator stopping the print run).  Each of these situations will create multiple Print Runs for a single press job. 
  • A job can be cancelled or deleted before it is printed, so DFE or Press jobs do not necessarily have Print Runs associated with them.

Complex Job Hierarchy:

The graphic below shows an example where a single DFE job was copied and sent to another attached press.  One press job was printed a single time creating a single print run, and the other press job was re-printed once creating 2 print runs.


Linking the contexts of a job

Print Run data can be linked to it's parent Press or DFE job contexts by using the parentJobId property.  Note that finding the dfe job context of a printrun will require finding the parent press job, then finding the press job's dfe parent job.

Certain job properties will exist across each context of a job.  For example jobName will be the same for dfe, press and printrun contexts of a job.  However, jobName is not a unique value among jobs.  Multiple DFE jobs can have the same jobName value, so you must ensure that jobs have unique names on the DFE if using this method.

Historic context

The historic context is very similar to the near-real time printrun context except that the data for these print attempts are pulled directly from the press.   Because of this there is no linkage between a historic print attempt and the parent press/dfe job (no parentJobId ).   The only current method of linking historic print attempt data with a dfe job is through the jobName property which is not necessarily unique as outlined above.