views:

565

answers:

2

I have added a workflow to a SharePoint(2007) calendar. The workflow copies information from Column A to Column B if Column A is not equal to Column B. I set this workflow to start when an item is created or modified. However, I would also like to start this workflow on all items that already exist in this calendar.

Is there a way I can do a mass start and run the workflow for all the items that already exist?

EDIT: Let me clarify my question a little more. I would like to run the workflow one time on the 200-300 items that have already been created. I don't need to traverse the items everytime a new item is added. Just one time to compare/copy Column A to Column B for all the existing items

A: 

Add a customaction to the list's action panel through a feature that when clicked traverses all items matching the description (Column A != Column B), then triggering the workflow through the SPListItem's WorkflowAssociations

Colin
+1  A: 

Here's a low-tech method that should work. Go to the All Events view for the calendar, click Actions > Edit in Datasheet, then make an edit quickly to all event rows. Since it's a pseudo-spreadsheet view, you can set a value in the first row and then fill down all the rows. That would quickly modify each event, and thus should trigger the workflow.

If you don't want to edit an existing column (and lose any valuable data, for instance), you could just create a new column temporarily, go back into the datasheet view, and set a value in that column for all events. Once the workflows have been triggered, you could then just discard that column.

Ken Pespisa
low-tech, but that totally worked!! Thanks Ken!
swolff1978