locked
Can I send reminder emails a one day before a sharepoint calendar event

    Question

  •  Can I send reminder emails a one day before a sharepoint calendar event
    Tuesday, January 13, 2009 6:40 AM

Answers

  • You would have to write an application that goes through all the sites and determine which lists are calendars.  Then you would query the calendar for any item occuring in the next 24 hours.  

    The real question would be how do you know who to send the Email to?  You could determine everyone who is a reader/member/owner of the site and use their Emails but you would also run into issues with the groups like how may levels of sub-groups would you go down to determine who gets the Emails.

    Gary A. Bushey.
    Tuesday, January 13, 2009 12:21 PM

All replies

  • There is no out-of-box solution for this i think. There are some add-ons available to do this.
    Gautham S Pai | Posting is provided "AS IS" with no warranties, and confers no rights.
    Tuesday, January 13, 2009 9:50 AM
  • You would have to write an application that goes through all the sites and determine which lists are calendars.  Then you would query the calendar for any item occuring in the next 24 hours.  

    The real question would be how do you know who to send the Email to?  You could determine everyone who is a reader/member/owner of the site and use their Emails but you would also run into issues with the groups like how may levels of sub-groups would you go down to determine who gets the Emails.

    Gary A. Bushey.
    Tuesday, January 13, 2009 12:21 PM
  • sasanthosh-

    What I did to accomplish this with absolutely no custom apps or code:

    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.
    Then also 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.

    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.

    Hope this helps! You may even call this an out-of-box solution!
    • Proposed as answer by Millie G Monday, November 23, 2009 2:26 AM
    Wednesday, January 14, 2009 2:24 PM
  • Sasanthosh,

    Thanks for this posting! I tried this and it works! However, the reminder message that I'm getting contains  {Calendar Title} has been added as the first line in the body with the details about the calendar event. Where is it pulling this message from and can I customize it? I did not put in any customize message in the workflow so it must be taking some kind of default template I think.

    I'm kind of new at the Sharepoint Designer so any help would be greatly appreciated.  Thanks.
    Tuesday, March 03, 2009 6:08 PM
  • This is awesome. I just implemented it and am testing now. Im looking to be notified an hour or so before tasks. Ill let you know how I do on modification.

    Very good tutorial.

    UPDATE: To get it to notify 1 hour prior, create the alert column the same way as the Alert - 1 day, except change 1 to 1/24 (1 hour):
    =[Start Time]-1/24

    Again. this saved the day and was a piece of cake. Highly recommend.
    • Edited by Rich Stoppiello Thursday, June 18, 2009 8:57 PM
    • Proposed as answer by Kyah Thursday, June 25, 2009 8:42 PM
    • Unproposed as answer by Mike Walsh FIN Tuesday, February 08, 2011 3:11 PM
    Thursday, June 18, 2009 4:24 PM
  • How about if the event items are repetitive? The workflow can start when an item is created but how do we start the new workflow if we want to make the item reoccur for another week.

    Thanks.
    Kyah


    Kyah
    Thursday, June 25, 2009 8:50 PM
  • i'm not sure how you could do this with built in recurrence, but i'm sure you could create some custom fields to hold your own "recurrence" data.  Then when you initially set up the event, the workflow will start and alert you based on what you set up.  Then add to the workflow to pause it again until it actually reaches the event date.  once the event date is reached, the workflow will start up and this time increment the event date based on your custom recurrence fields (or copy the current event with a new date if you want to keep the old event on the calendar).  i think this change will start up a new instance of the workflow and it all starts over again....

    i haven't tested this.  it's purely a thought in my head right now.  it's friday tomorrow so it'll probably be slow so i'll see if can try it out and post my results here.


    http://thewirewss.blogspot.com
    Thursday, June 25, 2009 9:42 PM
  • What happens when the server goes down (or the Sharepoint service is turned off for some reason) when the SPD workflow is in Pause mode??    Your email alert isn't generated?  I have always avoided using this method to send alerts as I have been concerned about the reliability after a server down situation.  It would make my day if you can quarantee the workflow will re-generate  :-)

    Monday, November 23, 2009 2:30 AM
  • Hi Millie,

    It would be the best to try it, but theoretically the workflows are persisted (hibernated) in this case in Workflow Foundation. The question is that if it is supported by SPD workflows, or it is only a long-long loop to pause there.

    Peter
    Monday, November 23, 2009 2:50 AM