The order in which actions are executed depends on the following criteria:

  1. Whether an Action or Condition is set to only Run On Reference or on its own at one or multiple specific Run Time moments (Runtypes).
  2. Whether an Action is being depended on.
  3. If an Action depends on other Actions or Conditions, any thereby referenced Actions and Conditions are executed before executing the respective parent Action -
    In case the execution of any referenced Action or Condition fails, a dependent Action is not executed any further.
  4. Runtype selection overrides referencing, which overrides priority which in turn overrides title.

    For when an Action will be executed is at first determined by its Runtype, e.g. Before Login, After Login or At Shutdown.
    Within each Runtype, referencing other Actions brings the execution of such referenced Actions forward (if they have not been executed already).

    NOTE: Referencing an Action can only bring it forward within the same Runtype, but NOT from a later Runtype.
    If an Action was already executed at an earlier Runtype, the result can be re-used in any later Runtype(s).

    The Priority of each Action then defines which Actions come before others - Actions with lower priority values are executed first..
    Actions with the same Runtype and priority are executed by alphabetical order of their respective title - an Action with Title "Alpha" will be executed before an Action with title "Zebra".

Further details 

    • If an Action requires the result from another Action which is supposed to be executed later during that same Runtype, its execution is then brought forward.
    • If however an Action requires the result from another Action which is set to run at a later Runtype, the execution of the Action referencing that later Action will fail as an Action cannot bring another Action forward across Runtypes.
      On the other hand, referencing the result of an Action, which was already executed at an earlier Run Time, will work across Runtypes.