Wednesday, February 8, 2012

Sharepoint 2010: Workflow is not updating

I have been working on a department calendar for time off requests.  The list has a couple workflows to send emails to the approvers and the person who submitted the request.  I was updating the workflow in SharePoint designer, saving, and publishing.  I changed one of the workflows to "Start automatically when an item is changed".  I was still not receiving the test emails when the item was changed.  I then noticed when looking at the list in SPD the workflow still showed as manual start.  I tried everything I could think of, but couldn't get the list to reflect the changes after I saved and published the workflow.  I ended up recreating the workflow from scratch and everything worked.  It was annoying but at least it was fixed.....then suddenly a second workflow stopped sending the updates to the server.  I would change the email, but would still get the old version.  I dug around for a little bit and finally found this fix. 

It is taken from:  http://blogs.msdn.com/b/sharepointdesigner/archive/2007/03/27/tip-clearing-the-spd-workflow-assembly-cache.aspx



If you are building a workflow activity on WSS for SPD you may have to update your activity DLL regularly (say to fix bugs or alter behaviors).  Sometimes when you do this, SPD won't recognize your changes to the activity and instead appear to be using the 'old' DLL.  Depending on what you've changed in the activity on the server, SPD may not allow you to use this activity at all.  This is due to a mismatch between the server's activity and the SPD client's cached activity.  To fix this problem its a good idea to clear your SPD activity cache whenever you update your activities DLL on the server.
To clear the SPD activity cache:
1. Close SPD.
2. Open “My Computer”.
3. Go to %System Drive%\Documents and Settings\%user%\Local Settings\Application Data\Microsoft\WebSiteCache (If you are running Vista, that path is different - look for %System Drive%\Users\%user%\AppData\Local\Microsoft\WebSiteCache).
4. Go to a directory that looks similar to the name of the website you were connecting to. (Alternatively, you can just delete all these directories and everything should work when you boot SPD).
5. Delete the assembly with the name similar to the one you are changing.
6. Boot SPD.
7. You can now work with your updated activity.

No comments:

Post a Comment