Uploaded image for project: 'JS - JS7 JobScheduler Engine'
  1. JS - JS7 JobScheduler Engine
  2. JS-2230

Offer functions in predicate of If Instructions for lazy evaluation

    XMLWordPrintable

Details

    Description

      Current Situation

      • The If Instruction if present at the beginning of a workflow is evaluated at the point in time of order submission, not at the point in time of order start. The reason being improved resilience to attach an order to an Agent and to allow the Agent to autonomously start the workflow from the next job.
      • This denies use of non-deterministic functions such as now() and jobResourceVariable() in If Instructions.

      Desired Behavior

      • The now() and jobResourceVariable() functions are made available for use with predicates in If Instructions in a workflow.
      • On order submission the Controller will try to evaluate the If Instruction. If it meets the now() or jobResourceVariable() functions, evaluation will be stopped and will be repeated at the point in time of order start.
      • Workflows holding the now() or jobResourceVariable() functions in an If Instruction in the first position of the workflow will be attached an Agent at the point in time of order start.
      • Use of functions in If Instruction is made available like this:
        If now(format='hh:mm', timezone='Europe/London') >= '07:30'
        

      Attachments

        Activity

          People

            jz Joacim Zschimmer
            ap Andreas Püschel
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: