Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have a process that needs to be run across every element of a list, doing specific things (mostly sending emails) based on several different fields of that item. This operation will always be done on all items in the list simultaneously. Code is not an issue because that kind of element has already been implemented elsewhere in the system, where one-per-item is not feasible.

I'm stuck at the decision of how many workflows to use for the system. I can either setup a workflow on a single "index" item that iterates across all of the items in the list, or I could setup multiple workflows that run on every single list item, each indepedently handling their own item.

Are there significant upsides or downsides to one of the approaches versus the other? Is one or the other more flexible? Are there strain issues I should be worried about? Or does it mostly boil down to how many things I want to be monitoring for errors?


I'm aware that under normal circumstances, a timer job would be a wise move for a periodic email system. I'm under the impression, however, that timer jobs cannot be easily or readily configured by users in the UI, and this needs to be flexible in both what is done and how often it triggers. In some of the site collections, this will be entirely manual in operation - so I'd much prefer an option that allows me the freedom to trigger it at will.

If I'm mistaken in my understanding that timer jobs cannot accomplish the above needs of flexibility and easy on-demand override, then please let me know. Otherwise, I'd prefer an understanding about whether there's any significant differences between one-on-all versus one-on-each, or if it really doesn't matter in that choice.

share|improve this question
    
When do you send emails? When an item changes? or periodically? –  Shoban Apr 12 '11 at 17:48
    
@Shoban Periodically. These are manually triggered workflows. –  Grace Note Apr 12 '11 at 17:49
add comment

3 Answers

up vote 4 down vote accepted

If this is just for sending emails and for all list items I would consider a timer job, it's much easier to control these and you can also schedule them to run periodically if needed.

Edit: Yup, there is no OOTB UI for timer jobs configuration and I understand your concern about that. If you want to have the UI flexibility than you should probably go for one workflow per each item, however there are workflow capacity limits that you need to be aware of! From my experience SharePoint workflows are great as long as you are using them within these limits and for stuff they should be used for. My professional opinion is: don't use them for this scenario :)

share|improve this answer
    
I appreciate the nudge towards a more efficient solution for the general situation, but unless my understanding is in error (which is plausible), I don't believe timer jobs contain the full flexibility and ease of modification I'll need for this and any future features that will mimic this functionality. Please correct me if I'm wrong. –  Grace Note Apr 12 '11 at 19:09
    
Coded workflows also not flexible. You can't iterate whole list with SPD workflows only. –  gandjustas Apr 12 '11 at 19:24
    
@gandjustas I don't use SharePoint Designer. –  Grace Note Apr 12 '11 at 19:24
    
Edited my answer. –  Toni Frankola Apr 12 '11 at 19:26
1  
This might help if you go with Timer jobs: stackoverflow.com/questions/1137985/… –  Kit Menke Apr 12 '11 at 19:32
show 3 more comments

Timer job will bu suitable for you, not a workflow.

share|improve this answer
    
you can iterate through a whole list with SPD workflows (I agree that it's more complicated than a single item workflow). –  Christophe Apr 13 '11 at 3:59
add comment

Why not create a site-level workflow that is triggered via an event receiver or something? That way you don't have to decide on which item triggers the flow, a decission which is likely to be wrong always.

share|improve this answer
    
This is how the one-on-all workflow would function, yes. –  Grace Note Apr 13 '11 at 12:18
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.