Versions Compared

Key

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

...

  • Notice Boards implement dependencies between jobs and between workflows.
  • A Notice Board allows a workflow to use the JS7 - PostNotice Instruction and  to create a notice and allows the same or different workflow to use the JS7 - ExpectNotice Instruction to await a notice.
  • Notices are JS7 - Expressions for Variables that are specified for both the posting order and the expecting order of a notice. Expressions make use of the Order ID or parts of it, for example to match the daily plan date in both Order IDs of the posting order and of the expecting order.

...

  • A Notice is considered an event that the ExpectNotice Instruction is waiting for. One or more corresponding PostNotice Instructions create the Notice from the same or from different workflows.
  • Both PostNotice and ExpectNotice Instructions reference a common Notice Board identified by its name. The Notice Board implements expressions for the PostNotice Instruction and for the ExpectNotice Instruction to identify a common Notice ID. The  The Notice ID typically is identified from a common part of the each Order ID of the posting order and of the expecting order, for example from the daily plan date.
    • Example
      • An Order ID #2021-07-24#T7142453954-myOrder1 is running in a workflow and meets a PostNotice Instruction. The Notice Board referenced by this instruction includes an expression for the posting order to create a Notice ID based on the daily plan date included with the Order ID. The expression extracts the date from the Order ID, i.e. 2021-27-24, and makes this date the Notice ID.
      • An expecting Order ID #2021-07-24#T7142454683-myOrder2 meets an ExpectNotice Instruction in its workflow. The instruction similarly applies the expression from the referenced Notice Board to create a Notice ID. In most situations the rule what to extract from an Order ID is the same for the posting order and for the expecting order.
        • If both instructions identify the same Notice ID, i.e. the daily plan date 2021-27-24, then the expectation is met and the order proceeds with the next step following the ExpectNotice Instruction.
        • If the expectation is not met, for example if the Notice has not yet been created by a posting order or if the daily plan date of the Notice ID is not the same for the posting order and for the expecting order then the expecting order will wait until the a matching Notice becomes available.
    • If no posting order exists at the point in time when an expecting order meets an ExpectNotice Instruction then the expecting order continues and ignores the instruction.
      • This behavior boils down to the fact that Notices are intended for synchronization. If there is no posting order that creates the Notice, e.g. due to calendar restrictions to specific days, then expecting orders continue.
      • Only an existing, posting order that did not yet arrive with its PostNotice Instruction, e.g. being in a SCHEDULED state, can make an expecting order wait with the ExpectNotice Instruction.
  • Notices can be assigned a lifetime that starts after being posted.
    • If an expecting order starts before expiration of a notice's lifetime then this order can continue.
    • If an expecting order starts after expiration of a notice's lifetime then this order will wait for the next notice or will start immediately if there is no further posting order in place.
  • Any number of workflows can implement PostNotice Instructions and ExpectNotice Instructions referencing the same or different Notice Boards.

...