Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Excerpt
  • Orders are triggers that will cause a job chain to start, e.g. . Jobs can be started by calendar events, file events and by programmatically created events.
  • Orders can be used with parameters that allow the same job chain to be used with different parameter sets.
  • Workflows are ruled regulated by orders. An order can be thought of as a directive that is processed in a chain of jobs. An order is assigned to a job chain with an identifier which is valid for that particular job chain. The order also has a status that changes after the processing of each job node and can have a payload of parameters.
  • Orders are persistently stored during processing. If a job, job chain or order is stopped during processing and then restarted, it will be continued at exactly the point where it was stopped.

Read more on the features of Order Objects in objects in the order and job chain documentation.

Order Processing Patterns

Job chain with multiple orders and

...

multiple start times

  • Three orders start the same job chain at different points in time:
    • Order 1 includes two start times for workdays.
    • Order 2 starts on Saturday.
    • Order 3 starts on Sunday.
  • Order 1 and 2 start the job chain at its beginning, order 3 starts the job chain with Job 2.
  • Each order carries a different parameter set for the jobs of the job chain
  • The jobs within the job chain will result in a unique successful end state or otherwise will use the same end state for failure.
  • Each job would immediately cause the job chain to be completed in case of error.

 

Flowchart
Order1 [shape="ellipse",label="Order 1\n parameter set: 1 \n start time: dailyWorkdays 08:00 \n start time: Workdays 16:00 ",fillcolor="orangeviolet"]
Order2 [shape="ellipse",label="Order 1 2\n parameter set: 2 \n start time: dailySaturday 0915:00 ",fillcolor="orangeviolet"]
Order3 [shape="ellipse",label="Order 13\n parameter set: 3 \n start time: dailySunday 1017:00 ",fillcolor="orangeviolet"]
Job1 [label="Job 1",fillcolor="lightskyblue"]
Job1_successful [shape=diamond,label="execution successful?",fillcolor="white"]
Job2 [label="Job 2",fillcolor="lightskyblue"]
Job2_successful [shape=diamond,label="execution successful?",fillcolor="white"]
Job3 [label="Job 3",fillcolor="lightskyblue"]
Job3_successful [shape=diamond,label="execution successful?",fillcolor="white"]
EndStateSuccess [label="End state: success",fillcolor="palegreen"]
EndStateError [label="End state: error",fillcolor="lightcoral"]

Order1 -> Job1 [label=" start orderjob 1 at 08:00"]
Order2 -> Job1
Order3 -> Job2 [label=" start job 2"]
Order2Job1 -> Job1_successful
Job1_successful -> Job2 [label=" yes "]
Job1_successful -> EndStateError [label=" no "]
Job2 -> Job2_successful
Job2_successful -> Job3 [label=" yes "]
Job2_successful -> EndStateError [label=" no "]
Job3 -> Job3_successful
Job3_successful -> EndStateSuccess [label=" yes "]
Job3_successful -> EndStateError [label=" no "]

 

Job chain with multiple orders executing in parallel

  • Three orders are executed in the same job chain at the same point in time:
    • Order 1 and Order 2 are executing the same job node 2. 
    • Job 2 is therefore executed in two independent tasks for each order.
    • Order 3 is executing job node 3.
  • Each order carries a different parameter set for the jobs of the job chain.

 

Flowchart
Order1 [shape="ellipse",label="Order 1\n parameter set: 1 ",fillcolor="violet"]
Order2 [shape="ellipse",label="Order 2\n parameter set: 2 ",fillcolor="violet"]
Order3 [shape="ellipse",label="Order 3\n parameter set: 3 ",fillcolor="violet"]
Job1 [label="Job 1",fillcolor="lightskyblue"]
Job1_successful [shape=diamond,label="execution successful?",fillcolor="white"]
Job2 [label="Job 2",fillcolor="lightskyblue"]
Job2_successful [shape=diamond,label="execution successful?",fillcolor="white"]
Job3 [label="Job 3",fillcolor="lightskyblue"]
Job3_successful [shape=diamond,label="execution successful?",fillcolor="white"]
EndStateSuccess [label="End state: success",fillcolor="palegreen"]
EndStateError [label="End state: error",fillcolor="lightcoral"]

Order1 -> Job2start order 1 at 09:00 "]
Order3 -> Job1 [label=" start order 1 at 10:00 order 1 executing job 2 "]
Order2 -> Job2  [label=" order 2 executing job 2 "]
Order3 -> Job3 [label=" order 3 executing job 3"]
Job1 -> Job1_successful
Job1_successful -> Job2 [label=" yes "]
Job1_successful -> EndStateError [label=" no "]
Job2 -> Job2_successful
Job2_successful -> Job3 [label=" yes "]
Job2_successful -> EndStateError [label=" no "]
Job3 -> Job3_successful
Job3_successful -> EndStateSuccess [label=" yes "]
Job3_successful -> EndStateError [label=" no "]