I have a state machine workflow that has been throwing an error right at the end so it does not successfully end. It is a normal looking error, "Coercion Failed: Unable to transform the input lookup data into the requested type." I am having a bit of trouble determining where that transformation is happening. The other workflow initiates successfully, but this one just doesn't end gracefully. The workflow status doesn't actually change to the text "Sent for RB votes and final approval" like the Set Workflow Status should be doing, but I don't see anything in that action that looks unusual. Could this be something from further up the workflow? Any ideas to help troubleshooting would be much appreciated!
Spontaneously I'd think the problem lies within the set workflow status action. Will the state machine end correctly after you disable the set workflow status action?
Could you provide a screenshot of the configuration of this action?
It doesn't seem to do this consistently, which is making it a bit more challenging to track down. Sometimes the state machine ends just fine. I'm digging through the individual items to see what is different, but haven't uncovered anything yet.
Here is the set workflow status action:
There isn't much to that action, which made me wonder if there is something earlier in the workflow that could throw an error like this. I am confused by the timing of it going into the error state at the end.
There is indeed not much that could go wrong in that action.
When starting the workflow in the action before, do you give it some parameters that could cause the issue?
When deactivating the update status action, does the workflow still crash from time to time?
Finally I'd check the assign flexi task. Are the assignees static or is there some logic beforehand that could lead to empty or misconfigured assigneed?
To follow up on this one... I focused a lot of troubleshooting on the flexi task and eventually I removed the flexi task from the equation entirely and continued to get the error when in a branch that was trying to end the state machine. I kept moving the "change state - end state machine" action up the chain to reduce the number of variables and it failed until it was the only action in the state. At that point it was successful. I made a new branch in the state machine called "exit" that just has a "change state - end state machine" action. Any other branches that previously ended the state machine would just change state to "exit" where the state machine would end instead. It seems to end gracefully now. Seems strange, but it works.