The first solution works fine without any issue on list workflow, but it is not working on the reusable workflow template. The workflow gets triggered if I click button "save as draft" instead of "Send". Do I need to do anything different for reusable workflow ?
Any thoughts ??
I don't often use reusable workflows, so I can't help you a lot with that but there shoudn't be something different to configure. Have you tried to remove the start condition so that the workflow always trigger when an item is created/modified and then check the value of the column which should have a different value depending on the clicked button?
I have got option 1 working OK, however after the workflow completes, if I edit the item and click 'Save' it re-triggers the workflow. Do you know of any way of stopping this?
Henning Eiben is absolutely right . When I have such a workflow, I have the habit to put following actions at the beginning of the workflow :
I add a "Run if" action because in specific cases, the same workflow can be started by clicking on a specific button on the form or it can be started by another workflow.
Hope this helps
Just back regarding the unwanted workflow restarts - I had configured my form with the first step being a filter "Run if 'submitted' column =1". At the very end of the workflow I had Update current list item to "reset" this column to 0.
I'm just wondering if it's important to have the 'update current list item' at the beginning of the workflow also - just underneath the 'run if' filter?
Also is it important to have the 'commit pending changes'? step. (I've recently had an unwanted restart recently and also a form that failed to start).
If in the workflow you don't update the current item or only once, then the "Commit pending changes" action is not important and you can put the "Update current list item" action where you want in the workflow. Be careful if in the workflow you're updating permissions of the current item: it will update the item and if the "submitted" column hasn't been reset, the workflow will trigger again.
Hope this helps