I have created a custom list called Reclamations with a few new columns:
- DateRegistered (date only)
- ExpirationDate (date only)
- Responsible (person, allow multiple selections)
The purpose is to send an email to the responsible people 2 days before the expiration date. There are quite a few solutions to accomplish this task. Some of them involve another list with calculated column, custom timer job, SQL Server Agent, Windows Task Scheduler, PowerShell script …
But I am a fan of simple solutions. All you need is one-step declarative workflow (created with SharePoint Designer) and a workflow scheduler. This is when HarePoint Workflow Scheduler comes in handy. It is a free solution that allows scheduled execution of SharePoint workflows. For more info check their site here and documentation here.
Installing the software is very simple. Download it, extract the installation files and start the setup file. First it will check the prerequisites and if everything is fine you can choose the web application/site collection/site where you want it to be installed. The installation will activate the features (web or site) for you.
Now let’s create one very simple workflow using SharePoint Designer 2013. I assume that you are already familiar with SharePoint workflows and creating one. I have called my workflow ExpirationAlert. Leave the start options for the workflow unchecked.
Next, go to Site collection Administration settings (for the site where you installed the HarePoint product) and choose HarePoint Workflow Scheduler.
Click the Edit Tasks button and then add new item. Make sure that the correct workflow is selected. I have set the trigger to Day and added time of the day. And that’s it, your workflow will be executed every day at the time you specified.