StateMachine on SFC or tag ValueChanged script?

Hi there,

I need a statemachine , for example state change to “run” from “standby” depends on “start” input.
A SFC with transition and action can do it.
A tag with udt change scrpit can do it as well.
Which way is better to implement it ?
SFC seems to be the recommend solution for this case.
But those gateway tag also visiable for all clients, and we can interact with database in scripts as well.
Any suggestions?