As part of a solution that I’m putting together at the moment I had a requirement that went something like this:
We want an export button on the search results page that allows us to save all the search results to the desktop
Designing "bulk actions" like export that affect a large set of SharePoint items as a single operation is a challenge. Using a custom SharePoint timer job allows us to keep these potentially very costly operations outside of the user context.
The design follows this basic flow:
- User selects a number of items (from search results) to process
- Selected items are "tagged" for attention from the timer job
- User is notified that the operation is "scheduled"
- Timer job runs and identifies "tagged" items
- Items are processed
- Report is generated
- User is notified of completion