Natural Flow of a StateMachine

Hello all,

i am a little confused with the natural flow of control in a UiPath StateMachine. If the condition of the transition evaluates to true, which one of the following flows is correct:

a). state entry > transition trigger > condition is true > state exit > transition action > next state
b). state entry > transition trigger > condition is true > transition action > state exit > next state

appreciate your help

It’s actually:

state entry > state action > state exit > transition entry > choose transition trigger > transition action > transition exit > next state

From a diagram view, it doesn’t appear to work this way, but after exiting the state, the process checks all possible transition triggers and chooses the one which it matches to first. It goes from top to bottom in shared transitions, but in the event of distinctly different transitions, I’m not sure what order it takes. The REFramework uses shared transitions for this reason.


Did you get the correct answer for this query?
I was also learning State machine had similar doubt.

What I could understand after logging the states is

a) entry section performed > All the triggers are evaluated (not sure why it is evaluating multiple times)> condition is true > exit performed> transition action > next state

My confusion here is

  1. It goes to all triggers and logs the message inside the trigger even multiple times?
  2. Whether the trigger condition is checked at that time?

Please correct me in case you got clarity.

Hello Anthony,

its been quite sometime that i looked into this topic. however at that time i made some notes (my understanding). I am attaching it here, check if it helps - Cheers !

Hara01. StateMachine.docx (131.1 KB)