Wednesday, January 14, 2009

Event Reminders for your Calendars

There are some third party apps out there to accomplish this, but I prefer free and using SharePoint's built-in features (it seems to be more reliable!). This example shows how to set up a reminder for 1 day before the event time, but it follows the same for however early you want your reminder.

1. Add a custom field to the calendar called "Alert - 1 day". Make it a calculated field with the calculation [StartTime]-1. Make sure it is a date type. I also specified date and time so the alert goes out exactly one day before, to the minute.
2. Then add a custom field to the calendar called "Reminder Recipients". Make it a people picker control and choose to show Email addresses and probably allow multiple selections too.
3. Next, open your site in SharePoint designer and create a workflow (New > Workflow) for the calendar. Set the workflow to automatically start when the event is created/changed. I also created a workflow variable called "Recipients" of type string. Then my workflow went like this:

If Alert - 1 day is greater than Today
Pause until Calendar:Alert - 1 day
then Set Variable: Recipients to Calendar:Reminder Recipients
then Email Variable: Recipients

Basically, when creating a new event, the person specifies who they want the reminder to go to. Then once the event is created, the workflow is automatically started. The workflow assumes the event is in the future (The IF statement). Then workflow just pauses until it reaches the date of the "Alert - 1 day" field that should contain the date of exactly 1 day before the event. As soon as that date is reached, the workflow starts up again, gets the recipients that were specified and sends them an email. In the workflow creation, you can customize the content of the email and even include calendar lookup values in the email.

1 comment:

  1. Please does this work for recurring events? if not, please how do you go about it?

    Thanks.

    ReplyDelete