I created a workflow in SharePoint Designer that automatically starts when a new item is created. It has one step. In it, if a specific date field in the list item is greater than or equal to Today, the action is to pause until that date and then send an e-mail to a specific group. This workflow seems to be working just fine.
However, what can I do if that date field in the list item is changed? In that case, I want to take one of following actions:
If the workflow status is in progress and the new date is less than today, I want to cancel the workflow in progress and send a different e-mail to the group.
If the workflow status is in progress and the new date is greater than or equal to Today, I want to change the workflow that is in progress to pause until the new date and then send the e-mail to the specific group. (NOTE: The e-mail includes a lookup for the date field, so the e-mail will need to reflect the new date when it is sent.)
If the workflow status is completed and the new date is greater than or equal to Today, start a new workflow to pause until the new date and then send the e-mail to the group.
In all other cases, no action is necessary.
How can I accomplish this? Do I need to create a new workflow to automatically start when an item is changed or can this be done with the existing workflow by also allowing it to start when an item is changed? What do I do with the first workflow if it is in progress?