Batch Updates on List Items using SharePoint Designer Workflow
This article explains how to update multiple SharePoint list items by using SharePoint designer workflow.
Many try to accomplish this by tweaking the workflow activities that replicates the "For Each" loop or nested conditions by creating multiple flags in order to run the batch update methods on SharePoint Designer Workflow.
The logic of this approach is confusing and creates performance issues on the list - especially if your SharePoint list has List View Threshold (LVT).
An advanced programmer could find multiple code based solutions to updates the items.
The approach is high risk since the activities:
- Iterating the SharePoint List Item Collection, giving item level permission on the each items,
- Iterating all SPGroups in the Site or Web
Coding for these including correct usage on using operation, storing cache or session variables, Memory leaks, Mismanaging the exception handling all these activities come at the cost of a high load on the physical server and will degrade site performance. Practical experience using CSOM and Server Side Object Model proves this approach to be unattractive.
A far simpler approach is to use the "DataSheet View" in your list and update the flag field by dragging or copying the value into cell.
Steps
To enable the list edited in datasheet you need to configure it on list settings.
List Settings-->Advanced Setting--> Datasheet-> click the yes on "Allow items in this list to be edited using the datasheet? " After this setting done,
If you open the list in DataSheet view and start to update the flag column you are likely to see the issue below.
If you happen to see this message "*The Standard view of your list is being displayed because browser does not support running ActiveX control"
*
Reason could be one of the following.
- Browser does not support "ActiveX control".
- Your computer does not have "Microsoft Access database Engine" to render the datasheet view in the browser.
- or you might have installed the Office 2010 - 64 bit".
- To overcome this problem you have to install the driver "Download here.
Next check Internet Explorer -->Internet Options-->Security Tab- > Custom level and there wherever you see "ActiveX", enable it.
If the issue persists then the next thing to check is "Internet Explorer Enhanced Security Configuration (IE ESC) on your server role.
In Server Manager->Security Information Panel--> Configure IE ESC
and click Off radio button for administrators. (*** Strictly,Its not advisable only for administrator on the development server not on Production Server).
After these problems are addressed you can see your list in datasheet view.
Now create your SharePoint designer workflow and set the start option "Start Workflow automatically when Item changed".
If you have very large list, create the datasheet and filter and sort based on your conditional and type the 0 and drag the cell up to end of your list item as we do in excel sheet.
Once you list is updated all of its items using the SharePoint designer workflow.
This approach was tested on over 600 items those mixed with complex calculated look up columns and and the workflow worked fine.