I’m implementing a Job queue system for background data processing. I want to schedule a workflow to fire when the current one is completed, only if it isn’t already running in the background. Is there a way to check for this condition?
You can set the API workflow ID on a field when it is scheduled and make changes to the field to clear it at the end of the backend workflow. Check if the field is empty. You can also create a Log data type that has the Type (option set) of workflow that is running, and its status (scheduled, running, complete, error). Create log when scheduled, update log to running at start of workflow and complete at end of workflow. Make it error if any steps return an error.
I think both are great suggestions. Going to give them a try. Thank you .