Skip to main content
Question

Order of workflow execution if we have more than one workflow

  • May 15, 2026
  • 3 replies
  • 38 views

RakeshChangeshpur
Sidekick (Partner)
Forum|alt.badge.img+10

Hi Team,

 

How the workflow engine tries to invoke a workflow when we have more than one workflow for same trigger point

Ex:based on the Purchase Order Release call( projection call)

1)Workflow-1 : creating a workflow to add some charges

2)Workflow-2 : workflow to modify some data(any column in the Purchase Order)

 

I am sure we can include both the tasks within the same workflow 

what if we have two workflows designed for the said actions to perform how would the workflow execustion happens?

 

Regards,

Rakesh

3 replies

Forum|alt.badge.img+8

Hi ​@RakeshChangeshpur ,

  1. For Projection actions, execution order is not defined. So don’t rely on the execution order.
  2. For Events , they typically follow the trigger order. Again, there’s no specific ordering when retrieving event actions.

Regards,
Buddhi.


RakeshChangeshpur
Sidekick (Partner)
Forum|alt.badge.img+10

Hi ​@RakeshChangeshpur ,

  1. For Projection actions, execution order is not defined. So don’t rely on the execution order.
  2. For Events , they typically follow the trigger order. Again, there’s no specific ordering when retrieving event actions.

Regards,
Buddhi.

@Buddhi Gunasekara - Thats what exactly i want to know and understand as the triggering point is same and have multiple workflows invoking through event action or even say Project action 


Forum|alt.badge.img+8

@RakeshChangeshpur 

Hope below elaboration is the one you’re looking for.

Projection reactions run in explicit before projection actions and after projection actions phases for one OData operation: before projection actions → the OData projection call runs (the CRUD/action/call and related database operations) → after projection actions. If a reaction starts a workflow whose step invokes another projection, that nested projection runs to completion before the calling workflow step can continue. The OData response is not returned to the client until that nested projection finishes.

Workflow event actions are raised during database-side logic and collected in an internal queue. On the OData path, that queue is processed after the main projection step and after the after projection actions step for that operation, normally still before the OData response completes. Workflows for logged event actions are executed one after another.

Difference in short: projection reactions are hooks on the operation (before / after projection actions); event actions are queued during database-side processing and flushed afterward. Both finish with the OData response except when a workflow waits for a human step or uses async timing (runs out-of-band).

Ordering: multiple workflows registered for the same projection timing should not be depended on for order. Even when event actions flush in sequence, assume no reliable ordering guarantees unless official product documentation says otherwise.

Below graph explains how workflows are processed when projection actions and event actions are triggered by the Incoming OData operation itself.