I am new to workflows, but I'm experimenting. I have a workflow that I've built and if it's in State A, user A needs to get an email. There are similar states B, C, and D. Each has its analogous user. All is fine as long as each time the workflow is edited, the state is changed to another. If, however, one of the many other fields is edited, the user A (or B-D) will get emailed again. What I'd like to do is remember who I last sent an email to, so if I'd at the "send email" step and I'm about to send to the same person, I'll just skip it. How, in SharePoint 2010, is the best way to track who I last sent an email to? I wanted to loop and wait for the item to be edited, then store in a workflow variable, but there don't seem to be loops.
1 Answer
I typically handle this with flag columns (could be yes/no or choice). So in your case, I would have 4 flag fields, one for each user.
So at the beginning of State A you'd have a check that if flagA is no, email user A, then set flag A to yes. Repeat that for all the other states. Then when an item is edited within the state, it won't refire the email.
-
Would you put these in the same list or a related list? I'd hate for my users to tweak the value, but I guess it'd still be miles ahead of what I have today.– KevinCommented Jun 18, 2015 at 20:11
-
In the same list is how I usually do it. I hide them from the forms via the content type settings so they don't interfere with them. If you push it to a config or tracking list then it becomes more complicated as you always have to keep referring back to some other list. Commented Jun 18, 2015 at 20:14
-
OK, sounds great. Just need to read up on hiding fields via content type settings.– KevinCommented Jun 19, 2015 at 12:04
-
OK, so that was actually quite easy, if not exactly intuitive. Thanks a bunch, Eric.– KevinCommented Jun 19, 2015 at 19:19
-