Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I'm very much learning the basics of Workflows and need to carry out the following to a list of meeting 'Agenda items' with the 'Date/time' and 'Presenter(s)' (sorry that this is probably ridiculously easy):

(1) Run through date/time column until agenda 'Date/time' = Today + 1 month (a month in advance).

(2) If (1) is true, send an email to 'Presenter(s)' with a prompt/reminder (including title of agenda item).

(3) If (2) is false, pause (until (1) is true??/defined duration?? I don't know what would be best here).

(It essentially needs to automatically remind the presenter that they are due to present in one month's time).

I will additionally add a + 7 days (week in advance) reminder to this later - I assume that I add this as a second sequential step rather than a parallel step?

I want it to be robust enough to send an email even if an agenda item is modified or an agenda date/time is added < 1 month (or < 7 days) in advance. Obviously I don't want an email sent every minute/hour/day though, just one when the update has been made!

I'm using SP Designer FYI. I think I've probably got 90% of the way there with the steps and creation of variables, I just can't get it to actually work! :p

Thanks in advance! Dave

share|improve this question

1 Answer 1

Hi Dave (sorry for the length of the reply, but I hope it adds up to a sensible answer in terms of understanding the problem, and explaining how we've addressed it),

There are some hidden 'gotchas' when considering this kind of WF which is developed in SharePoint Designer and which might affect how you think about things; my experience around reminders comes from working with Documents people need to be reminded about such as Policies/procedures etc. that they are the Manager or Owner for, where they need to reconsider or confirm the validity of a document and record that it is good for the next period of time (perhaps another 1 or 2 years).

Basically the real problem with SPD WF's comes about because once you initiate a SPD workflow, it takes the parameters out of the document, and stores those as part of the elements of the WF variables. Thus if you make a change to a field, and the WF is continuing, that altered element does not get modified in the WF parameters - you need to 'kill' the workflow and start it off again in order for that to work correctly.

We've developed a fully inclusive approach for this and it is OK to do, but unfortunately it needs to have about 5 WF's in order to work. Basically you include a 'Pause until...' approach in the 'Reminding' WF and you need a parallel task where if a 'flag' is set it kills the WF. Thus, if someone changes the originating document, the 'Flag Set' WF runs, pauses for 1 minute, then changes that 'Flag' field, and then completes. This then allows for the 'Reminding' WF to restart with a new set of parameters.

However you have to consider what kind of field difference might initiate a change as well, because not every field perhaps needs the 'Reminding' WF to restart! For example if the date you want to remind about changes, if the person you want to email alters, if the importance differs etc. that all requires a restart. But if simple text field or other elements alter you might not want to restart things.

The end result of all of this is nastiness in our view - something that ought to be relatively simple to effect becomes mighty complicated.

To that end (and because Visual Studio WF's were not an option), we ended up looking for the equivalent of a timer task that could be triggered as we needed it. Basically we wanted a simple WF to email someone and for that to initiated daily against all documents in the library/list with a conditionality of looking for documents where the date (1 month before for example) was set to the current day.

We discovered there are numerous solutions available from people like Pentalogic, Virto software, Bamboo Solutions, SharePoint Boost, SharePoint Solutions, KWizCom etc, but the prices start around US$700 for an Alert Manager / Reminder / Customised Alert system so for us that was out.

What we did find was a really useful free application produced by HarePoint - called the 'Workflow Scheduler'. Basically this allows for a simple WF to be created, and for that to be triggered every day against every document in the library or list. There are levels of conditionality you can add as well which means it actually doesn't run against everything, just the documents where the reminder date is the same as today's date.

For us this additional element is a real winner, and a number of customers we work with have used this approach now with great results. However each instance is different and you'll need to consider if it is right for yourselves.

I am generally a big fan of SharePoint Designer workflows and have used them very effectively in all manner of ways, but sometimes they need a helping hand.

Regards Alan C.

share|improve this answer
    
Thanks Alan, that response was in far more depth than I was ever expecting! I guess I need to have a look into your suggestions and see what would be the best route to follow. –  user16958 May 14 '13 at 9:42

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.