Thursday, November 27, 2008
SPD Workflow: How to send a reminder a few days before the start date of a calendar entry?
A. Introduction
As the title conveys, in this article I would like to show how one can create a workflow (using SharePoint Designer), which sends notifications to a list of recipients 7 days before the start date of a calendar entry.
B. Preparations
Create a Calendar, which we would attach the workflow to. For this demo, I have created a Calendar called Team Meetings.
C. Workflow
- Open Microsoft Office SharePoint Designer 2007.
- Click File > Open Site.
- Enter the URL of the site containing our calendar called Team Meetings.
- Now click File > New > Workflow.
- On the Define your new workflow page, enter the following data:
--- Name: ReminderForMeetings
--- Attachment List: Team Meetings
--- Start Options: Automatically start this workflow when a new item is created and Automatically start this workflow whenever an item is changed
- Click Next, in order to start designing the workflow steps.
- Enter Calculate the reminder date as the Step Name.
- In the Actions section, select the action Add Time to Date.
- Click the 0 link and type -7.
- Click the minutes link and select days.
- Click the date link and then click fx. For the source select Current Item and for the field select Start Time.
- Click OK.
- Click the output link and create a new variable called ReminderDate of type Date/Time.
- Click OK.
- Click Add workflow step in the right panel, in order to create another workflow step.
- Enter Check whether a pause is needed as the Step Name.
- In the Conditions section, select Compare any data source.
- Click the value link, then click fx. For the source select Workflow Data and for the field select ReminderDate.
- Click the equals link and select is greater than.
- Click the value link. Click the ellipsis, select Current Date and click OK.
- In the Actions section, select the action Pause Unit Date.
- Click the this time link and click fx. For the source select Workflow Data and for the field select ReminderDate.
- Click Add workflow step in the right panel, in order to create another workflow step.
- Enter Send reminder as the Step Name.
- In the Actions section, select the action Send an Email.
- Click the this message link and configure the different e-mail settings.
- Click Finish, in order to save and publish the workflow.
D. Test the solution
1. Create a new calendar item, whose Start Date is less than 7 days.
-- Check that the ReminderForMeetings workflow has completed successfully.
-- Check that you receive a notification now.
2. Create a new calendar item, whose Start Date is greater than 7 days.
-- Check that the ReminderForMeetings workflow has started successfully.
-- Check that you receive a notification on the right date.
Subscribe to:
Post Comments (Atom)
9 comments:
I was reading your post and was wondering what your thoughts are on attaching this workflow to a re-occurring event entry in the calendar b/c they're only entered into the list as one item but show multiple events on the calendar web control? Any thoughts on this would be nice! By the way I Love your walk thru's they are very nicely done.
Thanks,
Shane G.
p.s. I will check back or look for future post about this issue thanks [I'm not a blogger I have space.live.com :( trying to keep everything in one spot]
Hi Shane,
Thanks for your comment and for the very good question.
Actually, I have checked the issue of attaching this workflow to a recurring calendar event, but with no success.
There should be some kind of turnaround, but I haven't figured it out yet.
So, I'll keep your question in mind. If I get an answer I would post it.
Best regards,
Samar Hossam
Thanks Samar great tutorial solved a problem for me.
Regards
Stuart
Hello Samar,
Shane G. here, I still have yet to find an answer to the problem. I don't think that it is possible from the research I have done. What I have found is that instead of creating individual items in the list for each re-occurring calendar entry, SharePoint actually creates some XML properties and stores them in the database, I don't like this but I think it is done to keep the calendar lists compatible with outlook. you can do this threw the object model (see links). On a side note I absolutely Love your blog(s) they are so easy to follow, well written and very detailed so keep up the good work.
Thanks,
Shane G.
Links:
SharePoint Calendar Explained:
http://blogs.msdn.com/sharepoint/archive/2007/05/14/understanding-the-sharepoint-calendar-and-how-to-export-it-to-ical-format.aspx
web service data access:
http://geekswithblogs.net/mcassell/archive/2007/08/22/Accessing-Sharepoint-Data-through-Web-Services.aspx
Object model calendar:
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webcontrols.spcalendaritem_members.aspx
Hi,
Great post.
New hire roll outs become a simple procedure by implementing a workflow to kick off with the first form filled out and submitted.
Thanks.
SharePoint Consulting
Hi All Does anyone know how to schedule workflows created with Sharepoint Designer. I need to run a worklow once a day for all the items how can I configure one. It Should sends emails to people with expired contracts
nice tip. saved me some time
Can you help with a workflow for a when the item is 1 day past due. Thanks and here is my email oglex30@gmail.com
Hello there,
I currently don't have any SharePoint development environment where I can try a scenario and tell you the steps. However, I just did a search and found a question on the forums, which might be similar to your problem. Please check this link:
https://community.office365.com/en-us/f/158/t/318023
Post a Comment