How to cancel multiple 'Error Occurred' workflows within a single list in SharePoint 2010

In our QA environment we have several workflows that have not completed due to errors. There are several thousand workflows in 'Workflow In Progress' status. We would like to cancel all the workflows that have errored out and are still in progress from only within this specific list. I've attempted running a powershell script but I could not get it to work.

Does anyone have a way or script to remove these failed instances?
LVL 9
macarrillo1Asked:
Who is Participating?
 
Meir RivkinConnect With a Mentor Full stack Software EngineerCommented:
here's the workflow status code list:
http://www.vadimtabakman.com/nintex-workflow-powershell-workflow-status-codes.aspx

this code run through all workflows in some list, and cancel those who got status
3 or 7 (error occur):

#Site URL
$web = Get-SPWeb "http://urlforsite.com";
$web.AllowUnsafeUpdates = $true;    

#List Name
$list = $web.Lists["ListName"];

# Iterate through all Items in List and all Workflows on Items.         
foreach ($item in $list.Items) {
foreach ($wf in $item.Workflows) {
if($wf.InternalState -match 'Error')
{
#Cancel Workflows        
[Microsoft.SharePoint.Workflow.SPWorkflowManager]::CancelWorkflow($wf);      
}
}
}
$web.Dispose();

Open in new window


from http://stackoverflow.com/questions/7595256/cancel-multiple-sharepoint-workflows-using-powershell
0
 
macarrillo1Author Commented:
Thank you sedgwick,

We wanted to run the status script before we ran the Workflows script to determine the status errors. As I ran the status script, I came across an error message when I enter the name of the workflow- we receive 'You cannot call a method on a null-valued expression.

Am I doing something wrong?

If more information helps, we have a workflow with multiple versions-when prompted for the Workflow name via the script, are we to only use the name of the WF or are we to list each version of the workflow?
0
 
QlemoBatchelor, Developer and EE Topic AdvisorCommented:
I've requested that this question be deleted for the following reason:

The question has either no comments or not enough useful information to be called an "answer".
0
 
macarrillo1Author Commented:
This is very helpful, but need more information to work out a complete solution.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.