Information Management Policy – Expiration Problem in MOSS 2007

Problem

IMP Expiration Policy Gotcha

Here is an unforeseen consequence of using MOSS 2007 Information Management Policy (IMP) Expiration. The IMP sets a flag on the document to make it exempt from the policy thereafter, which meant the workflow would never run again even if the Expiration Date was reset, because the document is exempt!

For example – Trigger a custom Review Workflow if the “Expiration Date” is today…

enable expiration

You can check this by viewing a documents properties.

exempt from policy

Solution

There are three solutions to this issue:

  1. View the Document Properties and use the “Remove Exemption” link in the “Exempt from Policy” field to remove the exemption
  2. Remove the Exempt flag in code; this is a custom workflow
  3. In our scenario; use a custom SharePoint timer job instead of IMP!

We choose option 2, remove the Exempt flag using code as we developed the workflow in pure code. This was fairly easy to do with the following lines of code, however you need to make sure you do it during the right part of your workflow/process.

using Microsoft.Office.RecordsManagement.InformationPolicy;
Policy.RemoveExemption(file.Item);

Bonus Tip

The IMP Expiration job fires once a day by default and can also be started by hand, which is great for troubleshooting an issue like this. I believe starting it by hand was added in service pack 2.

Central Administration > Operations > Policy Features and Resourcesÿ > Expiration

configure expiration

Next Steps

Leave a Reply

Your email address will not be published. Required fields are marked *