*not all of course, but how about one with dynamic forms, flexible stages and no restarting should you make a change to the workflow or stage?
I won't be showing all the detail in this post but hopefully enough if you want to start playing.
The following came about after an instruction to build a form to go through multiple stages. Early on, it became apparent that a lot of the text on buttons, emails and stages would be constantly changed and tweaked.
So I had an idea for using a lookup list that the workflow would use to see what stage the form was at, the stage name, who owned it, relevant email text, form button text and what stage was next. This gave me the flexibility of quickly changing a large amount of text the workflow and forms use, without having to make changes to forms or the workflow.
The list to be used to store all of the items is connected to the lookup stage list by way of a normal lookup field. Note I have created a central top site list to hold the stage info. By using a lookup, I can bring all of this information into my item list for the workflow & forms to use. IE on buttons or descriptive text.
When a user creates an item, it’ll default to stage 1.0. My starting stage. The workflow which runs when the submit button is pressed, looks up all the relevant information, updates the item to Stage 2.0, sends an email to the owner thanking them for their submission, updates the assigned field to the next stage owner and sends them an email advising them they have an item to deal with. Then the workflow finishes. You have an item at the next stage and no running workflows!
If you need to make change to a stage email or form button, you would just update the stage lookup list. The next time the workflow runs it’ll use the updated information. Same with the workflow. Require an extra stage, just update the stages list.
If anyone is interested in more detail let me know!