When are assignment rules evaluated?

Certified Senior Developer

Does anyone know when assignment rules are evaluated?

We have an expression rule that returns a Group based on a set of parameters. This expression rule can be used for swimlane assignments, attended task assignments and for process model alerts. In order to make most efficient use of this expression rule (and understand the trade-offs between various options) we are keen to know when/if the rule would be evaluated for each of these scenarios.

E.g.

  • If the expression is used in a swimlane assignment will it be evaluated every time a new instance of that process model is initiated or only if an attended task in that swimlane is assigned based on that swimlane assignment (and if so would it be evaluated twice if there were two attended tasks in that swimlane)?
  • If the expression is used directly in the assignment of an attended task will it only be evaluated if that attended task is triggered or is it always evaluated when an instance of that process model is initiated?
  • If the expression is used in the process model alerts tab will it be evaluated every time a new instance of that process model is initiated or only if an alert is raised for that instance?

  Discussion posts and replies are publicly visible

Parents
  • These are some good questions. The documentation does not contain a whole lot about your specific questions. Like sergeiz has mentioned, if you use regular task assignment in your User Input Task node, it will get reevaluated every time that node is started. In other cases (swimlane assignment or throwing an alert) I believe it would reevaluate every time as well instead of initially when starting the process.

    Best way would be to try it out, start the process, change the recipients in the expression rule and then loop around to that same User Input Task node again.
Reply
  • These are some good questions. The documentation does not contain a whole lot about your specific questions. Like sergeiz has mentioned, if you use regular task assignment in your User Input Task node, it will get reevaluated every time that node is started. In other cases (swimlane assignment or throwing an alert) I believe it would reevaluate every time as well instead of initially when starting the process.

    Best way would be to try it out, start the process, change the recipients in the expression rule and then loop around to that same User Input Task node again.
Children
No Data