Use the community commons to commit in seperate database transaction. Because since the first microflow did not finish yet the record is not seen by the other microflow. By using the commitInSeparateDatabaseTransaction the commit takes place in its own transaction and thus can be seen by the other microflow.
Regards,
Ronald
As the first step in the two microflows:
Get the flag, if not set, set it, commit object and call java-action endTransaction. this wil store it in the datbase.
if set: wait or exit.
Don't forget to reset the flag in all cases, add a custom error handler.
Perhaps using a shared MF that calls these sub microflows could work. And then set the non concurrent running option on that main microflow.