• Retention policy set on "Expiry Date" column. Starts a workflow that notifies a user.
  • User updates the document (and expiry date)
  • Retention policy no longer fires when the new expiry date is encountered.

I want users to be able to update their document and then receive a further email once their document next expires. However I don't want them pestered if they ignore the email.

  • I'm having the same problem... Have you by chance managed to solve this? Sincirely, Oleg
    – Oleg
    Feb 24, 2012 at 10:01
  • i'm also having the same issue. Once the date is edited in the list, the retenton policy is not being executed for the 2nd time. Retention Policy and Info Management run every 5 mins. Is there a solution ? Apr 2, 2012 at 9:00

5 Answers 5


In my scenario I needed to monitor a site's last accessed date, but with minimum overhead (so not on every page load in masterpage..) and then after a site was not accessed for 6 months - delete it. I've done that via custom list which had only one item and a retention schedule enabled. List would be created when the site is provisioned. And the retention policy is this: run the expiration action one day after Created date, and then recurrently run it every day. So in this way I have my custom expiration action run every day, and it's doing it's checking...

Hope this helps someone


The only approach I could come up with was to copy the list item, then delete the original as part of my workflow that gets kicked off by Policy.

Because it then becomes a new item that hasn't had the policy run on it, it will fire again.

I don't need to keep any history although I suspect it may even copy that, but I haven't checked.

I also have the Copy List Item Extended action which outputs the ID of the newly created item in the workflow.

  • History is not moved/Copied for ListItems but do for files
    – Gaurravs
    Jul 6, 2016 at 4:53

I know this is an old thread, but I have to share with you guys. Maybe someone will benefit from my story.

If you think about it, Retention Policy is an if-statement.

So what I did was: set the retention policy to recur every day after the review date. However, inside the workflow, write an if-statement: If "today" is equal to the "expiry date".

If that is true, the workflow will continue running and do the actual workflow, send an email or whatever you want to do. If not, the workflow stops without doing anything else.

So, even though the workflow is recurring every day, it's actually running only on the expiry date. And even after that, it will keep on recurring every day and will send an email only when the if statement is true.

The steps:

  • Retention Policy: Recurrence every 1 day

  • Workflow: the first line should be an if statement. If Today is equal to "expiry date"

I know its a simple idea, but it works. I thought about it hard and continuously for 3 days, even before sleeping!! and I'm so happy right now :)


Have you set the Expiration Policy timer job to run regularly via Central Admin? The expiration date is calculated immediately when the document is updated (or when the Information Management Policy timer job is run), but the action to be performed on the item is not run until the Expiration Policy timer job is run.

  • Yup, no effect. This is repeatable in a development environment Apr 16, 2012 at 13:19

You could try using Microsoft Visual Studio to write an event receiver. Every time the conditions are met (e.g. due date modified), the event receiver could stop the workflow and restart it.

Similar question on social.msdn.microsoft.com

  • SharePoint architecture calls for a retention policy which fires after an amount of time. This should not require a workflow with a wait condition. Apr 16, 2012 at 13:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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