I have a workflow that uses a SharePoint Choice field to drive logic. Items in the choices include "Credit", "Credit and Return", "No action". The workflow inspects the chosen value and branches accordingly. Problem is the user wants to rename a Choice (from Debit to Debit/Credit). Of course the Choice field can be changed and workflow updated BUT running workflows will break. Is there a creative solution?
I know how to safeguard against this in the future using secondary lockups to match logic but ideally wonder if there is a fix.
How many workflows do you have running? Is it possible to do this in a break, effectively? Also, if a workflow is already running, then it will continue to run as it was published, meaning your choice value change would be unknown to it. However, of course, if your workflow is pre-that part then when it gets there, if the value is unknown to it (ex you've set this choice to the new value) and it doesn't know what to do with it (if you didn't build out an "other" branch) then yes, it will bomb.
I guess what I'm saying is you could pretty easily do this as long as there aren't hundreds of running workflows by not changing this field value for any of the items with workflows currently running.
Thanks Courtney. The field value is effectively a list column so once changed it will be seen by the form. The form is opened/updated multiple times through the running of a workflow. 72 running workflows!
What do you mean by "break"?
As I see it, running workflows are still looking for a value of say "Credit" but in the form the user would now see and select "Credit/Debit" which would fail the workflow logic.
I have a specific problem to solve here but this is a wider generic issue. Wishing now I had used a lookup list with permanent ID against a visual description!
I would say the only reasonable solution will be to add new choice entry and teach users not to use old one but rather new one.
note, that once you rename choice option it will not only cause problems to running workflows, but you will as well have invalid choice value in all the existing items. so you would as well need an update on whole list.
as well, you might need to update form(s), if you've build any logic in there on choice value (eg. rules)